home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1997 September / Macworld (1997-09).dmg / Serious Software / Cherwell Scientific Demos / pro Fit / pro Fit 5.0 demo (68k).sea / pro Fit 5.0 demo (68k) / External Modules / External modules sources / C / Contour plotting / ContourFunction.c < prev    next >
MacBinary  |  1996-03-19  |  17.5 KB  |  [TEXT/KAHL]

view JSON data     |     view as text     |     open on a Mac     |     open on a PC

This file was processed as: MacBinary (archive/macBinary).

You can browse this item here: ContourFunction.c

ConfidenceProgramDetectionMatch TypeSupport
66% dexvert Compact Compressed (Unix) (archive/compact) ext Supported
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Tue Mar 19 16:23:03 1996, modified Tue Mar 19 16:23:03 1996, creator Think C, type ASCII, 17263 bytes "ContourFunction.c" , at 0x43ef 410 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[KAHL]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 11 43 6f 6e 74 6f 75 | 72 46 75 6e 63 74 69 6f |..Contou|rFunctio|
|00000010| 6e 2e 63 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |n.c.....|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4b 41 48 | 4c 01 00 00 00 00 00 00 |.TEXTKAH|L.......|
|00000050| 00 00 00 00 00 43 6f 00 | 00 01 9a ad 74 d6 37 ad |.....Co.|....t.7.|
|00000060| 74 d6 37 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |t.7.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 fd ff 00 00 |........|........|
|00000080| 0d 0d 23 69 6e 63 6c 75 | 64 65 20 22 70 72 6f 46 |..#inclu|de "proF|
|00000090| 69 74 5f 69 6e 74 65 72 | 66 61 63 65 2e 68 22 0d |it_inter|face.h".|
|000000a0| 0d 23 69 66 6e 64 65 66 | 20 5f 5f 4d 4f 44 55 4c |.#ifndef| __MODUL|
|000000b0| 45 5f 55 54 49 4c 49 54 | 49 45 53 5f 5f 0d 23 69 |E_UTILIT|IES__.#i|
|000000c0| 6e 63 6c 75 64 65 20 22 | 4d 6f 64 75 6c 65 55 74 |nclude "|ModuleUt|
|000000d0| 69 6c 69 74 69 65 73 2e | 68 22 0d 23 65 6e 64 69 |ilities.|h".#endi|
|000000e0| 66 0d 23 69 66 6e 64 65 | 66 20 5f 5f 53 54 52 49 |f.#ifnde|f __STRI|
|000000f0| 4e 47 5f 53 55 50 50 4f | 52 54 5f 5f 0d 23 69 6e |NG_SUPPO|RT__.#in|
|00000100| 63 6c 75 64 65 20 22 53 | 74 72 69 6e 67 53 75 70 |clude "S|tringSup|
|00000110| 70 6f 72 74 2e 68 22 0d | 23 65 6e 64 69 66 0d 23 |port.h".|#endif.#|
|00000120| 69 66 6e 64 65 66 20 5f | 5f 43 4f 4e 54 4f 55 52 |ifndef _|_CONTOUR|
|00000130| 5f 50 4c 4f 54 54 45 52 | 5f 5f 0d 23 69 6e 63 6c |_PLOTTER|__.#incl|
|00000140| 75 64 65 20 22 43 6f 6e | 74 6f 75 72 50 6c 6f 74 |ude "Con|tourPlot|
|00000150| 74 65 72 2e 68 22 0d 23 | 65 6e 64 69 66 0d 0d 2f |ter.h".#|endif../|
|00000160| 2a 20 74 68 65 20 66 6f | 6c 6c 6f 77 69 6e 67 20 |* the fo|llowing |
|00000170| 73 74 72 75 63 74 20 63 | 6f 6e 74 61 69 6e 73 20 |struct c|ontains |
|00000180| 74 68 65 20 76 61 72 69 | 61 62 6c 65 73 20 74 68 |the vari|ables th|
|00000190| 61 74 20 77 65 20 75 73 | 65 20 69 6e 20 52 75 6e |at we us|e in Run|
|000001a0| 28 29 20 2a 2f 0d 2f 2a | 20 57 65 20 63 6f 6c 6c |() */./*| We coll|
|000001b0| 65 63 74 20 74 68 65 6d | 20 69 6e 74 6f 20 61 20 |ect them| into a |
|000001c0| 73 74 72 75 63 74 20 73 | 75 63 68 20 74 68 61 74 |struct s|uch that|
|000001d0| 20 77 65 20 63 61 6e 20 | 70 61 73 73 20 74 68 65 | we can |pass the|
|000001e0| 6d 20 61 6c 6c 20 73 69 | 6d 70 6c 79 20 2a 2f 0d |m all si|mply */.|
|000001f0| 2f 2a 20 62 79 20 70 61 | 73 73 69 6e 67 20 61 20 |/* by pa|ssing a |
|00000200| 70 6f 69 6e 74 65 72 20 | 74 6f 20 74 68 69 73 20 |pointer |to this |
|00000210| 73 74 72 75 63 74 20 2a | 2f 0d 0d 0d 74 79 70 65 |struct *|/...type|
|00000220| 64 65 66 20 73 74 72 75 | 63 74 0d 7b 0d 09 64 6f |def stru|ct.{..do|
|00000230| 75 62 6c 65 09 09 66 69 | 72 73 74 4c 65 76 65 6c |uble..fi|rstLevel|
|00000240| 3b 09 09 09 09 2f 2a 20 | 64 65 66 61 75 6c 74 20 |;..../* |default |
|00000250| 76 61 6c 75 65 73 20 2a | 2f 0d 09 64 6f 75 62 6c |values *|/..doubl|
|00000260| 65 09 09 6c 61 73 74 4c | 65 76 65 6c 3b 0d 09 64 |e..lastL|evel;..d|
|00000270| 6f 75 62 6c 65 09 09 6c | 65 76 65 6c 53 74 65 70 |ouble..l|evelStep|
|00000280| 3b 0d 09 73 68 6f 72 74 | 09 09 78 31 50 61 72 61 |;..short|..x1Para|
|00000290| 6d 2c 20 78 32 50 61 72 | 61 6d 3b 09 09 2f 2f 20 |m, x2Par|am;..// |
|000002a0| 74 68 65 20 70 61 72 61 | 6d 65 74 65 72 73 20 66 |the para|meters f|
|000002b0| 6f 72 20 78 31 2c 20 78 | 32 20 28 30 20 69 66 20 |or x1, x|2 (0 if |
|000002c0| 3d 78 29 0d 09 6c 6f 6e | 67 09 09 78 31 52 65 73 |=x)..lon|g..x1Res|
|000002d0| 2c 20 78 32 52 65 73 3b | 09 09 09 2f 2f 20 72 65 |, x2Res;|...// re|
|000002e0| 73 6f 6c 75 74 69 6f 6e | 20 61 6c 6f 6e 67 20 78 |solution| along x|
|000002f0| 31 2c 20 78 32 0d 09 64 | 6f 75 62 6c 65 09 09 78 |1, x2..d|ouble..x|
|00000300| 31 4d 69 6e 2c 20 78 31 | 4d 61 78 3b 09 09 09 2f |1Min, x1|Max;.../|
|00000310| 2f 20 72 61 6e 67 65 20 | 66 6f 72 20 78 31 0d 09 |/ range |for x1..|
|00000320| 64 6f 75 62 6c 65 09 09 | 78 32 4d 69 6e 2c 20 78 |double..|x2Min, x|
|00000330| 32 4d 61 78 3b 09 09 09 | 2f 2f 20 72 61 6e 67 65 |2Max;...|// range|
|00000340| 20 66 6f 72 20 78 32 0d | 09 42 6f 6f 6c 65 61 6e | for x2.|.Boolean|
|00000350| 09 09 75 73 65 43 75 72 | 72 65 6e 74 47 72 61 70 |..useCur|rentGrap|
|00000360| 68 3b 09 09 2f 2f 20 74 | 72 75 65 20 69 66 20 77 |h;..// t|rue if w|
|00000370| 65 20 73 68 6f 75 6c 64 | 20 64 72 61 77 20 69 6e |e should| draw in|
|00000380| 74 6f 20 63 75 72 72 65 | 6e 74 20 67 72 61 70 68 |to curre|nt graph|
|00000390| 0d 09 6c 6f 6e 67 09 09 | 63 75 73 74 6f 6d 43 6f |..long..|customCo|
|000003a0| 6e 74 6f 75 72 57 69 6e | 64 6f 77 3b 09 2f 2f 20 |ntourWin|dow;.// |
|000003b0| 30 20 6f 72 20 72 65 66 | 20 74 6f 20 61 20 63 75 |0 or ref| to a cu|
|000003c0| 73 74 6f 6d 20 63 6f 6e | 74 6f 75 72 20 6c 65 76 |stom con|tour lev|
|000003d0| 65 6c 20 77 69 6e 64 6f | 77 20 0d 09 6c 6f 6e 67 |el windo|w ..long|
|000003e0| 09 09 63 75 73 74 6f 6d | 43 6f 6e 74 6f 75 72 43 |..custom|ContourC|
|000003f0| 6f 6c 75 6d 6e 3b 09 2f | 2f 20 30 20 6f 72 20 69 |olumn;./|/ 0 or i|
|00000400| 64 20 6f 66 20 61 20 63 | 75 73 74 6f 6d 20 63 6f |d of a c|ustom co|
|00000410| 6e 74 6f 75 72 20 63 6f | 6c 75 6d 6e 0d 7d 4d 79 |ntour co|lumn.}My|
|00000420| 53 74 61 74 69 63 56 61 | 72 73 3b 0d 0d 0d 0d 0d |StaticVa|rs;.....|
|00000430| 2f 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |/*******|********|
|00000440| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000450| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000460| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000470| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000480| 2a 2a 2a 2a 2a 2a 2a 2a | 2f 0d 0d 76 6f 69 64 20 |********|/..void |
|00000490| 53 65 74 55 70 20 28 09 | 73 68 6f 72 74 2a 20 63 |SetUp (.|short* c|
|000004a0| 6f 6e 73 74 20 6d 6f 64 | 75 6c 65 4b 69 6e 64 2c |onst mod|uleKind,|
|000004b0| 09 09 2f 2a 20 72 65 74 | 75 72 6e 20 69 73 46 75 |../* ret|urn isFu|
|000004c0| 6e 63 74 69 6f 6e 20 6f | 72 20 69 73 50 72 6f 67 |nction o|r isProg|
|000004d0| 72 61 6d 20 2a 2f 0d 09 | 09 09 09 53 74 72 32 35 |ram */..|...Str25|
|000004e0| 35 20 6e 61 6d 65 2c 09 | 09 09 09 09 2f 2a 20 74 |5 name,.|..../* t|
|000004f0| 68 65 20 6e 61 6d 65 20 | 6f 66 20 74 68 65 20 70 |he name |of the p|
|00000500| 72 6f 67 72 61 6d 20 6f | 66 20 66 75 6e 63 74 69 |rogram o|f functi|
|00000510| 6f 6e 20 2a 2f 0d 09 09 | 09 09 09 09 09 09 09 09 |on */...|........|
|00000520| 09 09 2f 2a 20 20 28 70 | 61 73 63 61 6c 20 73 74 |../* (p|ascal st|
|00000530| 72 69 6e 67 29 20 2a 2f | 0d 09 09 09 09 6c 6f 6e |ring) */|.....lon|
|00000540| 67 2a 20 63 6f 6e 73 74 | 20 72 65 71 75 69 72 65 |g* const| require|
|00000550| 64 47 6c 6f 62 61 6c 73 | 2c 09 2f 2a 20 74 68 65 |dGlobals|,./* the|
|00000560| 20 6e 75 6d 62 65 72 20 | 6f 66 20 62 79 74 65 73 | number |of bytes|
|00000570| 20 74 6f 20 62 65 20 61 | 6c 6c 6f 63 61 74 65 64 | to be a|llocated|
|00000580| 20 2a 2f 0d 09 09 09 09 | 09 09 09 09 09 09 09 09 | */.....|........|
|00000590| 2f 2a 20 20 69 6e 20 45 | 78 74 4d 6f 64 75 6c 65 |/* in E|xtModule|
|000005a0| 73 50 61 72 61 6d 42 6c | 6f 63 6b 2e 67 6c 6f 62 |sParamBl|ock.glob|
|000005b0| 61 6c 73 2e 20 2a 2f 0d | 09 09 09 09 09 09 09 09 |als. */.|........|
|000005c0| 09 09 09 09 2f 2a 20 53 | 65 74 20 74 6f 20 30 20 |..../* S|et to 0 |
|000005d0| 69 66 20 79 6f 75 20 64 | 6f 6e 27 74 20 75 73 65 |if you d|on't use|
|000005e0| 20 74 68 69 73 20 66 65 | 61 74 75 72 65 20 2a 2f | this fe|ature */|
|000005f0| 0d 09 09 09 09 45 78 74 | 4d 6f 64 75 6c 65 73 50 |.....Ext|ModulesP|
|00000600| 61 72 61 6d 42 6c 6f 63 | 6b 2a 20 70 62 29 09 09 |aramBloc|k* pb)..|
|00000610| 2f 2a 20 09 63 61 6e 20 | 62 65 20 69 67 6e 6f 72 |/* .can |be ignor|
|00000620| 65 64 20 69 6e 20 6d 6f | 73 74 20 63 61 73 65 73 |ed in mo|st cases|
|00000630| 20 2a 2f 0d 09 2f 2a 20 | 63 61 6c 6c 65 64 20 77 | */../* |called w|
|00000640| 68 65 6e 20 79 6f 75 72 | 20 63 6f 64 65 20 72 65 |hen your| code re|
|00000650| 73 6f 75 72 63 65 20 69 | 73 20 6c 69 6e 6b 65 64 |source i|s linked|
|00000660| 20 74 6f 20 70 72 6f 46 | 69 74 20 2a 2f 0d 7b 0d | to proF|it */.{.|
|00000670| 09 2a 6d 6f 64 75 6c 65 | 4b 69 6e 64 3d 69 73 50 |.*module|Kind=isP|
|00000680| 72 6f 67 72 61 6d 3b 09 | 09 09 09 09 09 09 09 2f |rogram;.|......./|
|00000690| 2a 20 77 65 20 64 65 66 | 69 6e 65 20 61 20 70 72 |* we def|ine a pr|
|000006a0| 6f 67 72 61 6d 20 2a 2f | 0d 09 53 65 74 50 61 73 |ogram */|..SetPas|
|000006b0| 63 61 6c 53 74 72 28 6e | 61 6d 65 2c 22 5c 70 43 |calStr(n|ame,"\pC|
|000006c0| 6f 6e 74 6f 75 72 20 50 | 6c 6f 74 20 46 75 6e 63 |ontour P|lot Func|
|000006d0| 74 69 6f 6e 2e 2e 2e 22 | 2c 32 35 35 29 3b 09 2f |tion..."|,255);./|
|000006e0| 2a 20 69 74 73 20 6e 61 | 6d 65 20 2a 2f 0d 09 2a |* its na|me */..*|
|000006f0| 72 65 71 75 69 72 65 64 | 47 6c 6f 62 61 6c 73 20 |required|Globals |
|00000700| 3d 20 73 69 7a 65 6f 66 | 28 4d 79 53 74 61 74 69 |= sizeof|(MyStati|
|00000710| 63 56 61 72 73 29 3b 09 | 2f 2a 20 6f 75 72 20 73 |cVars);.|/* our s|
|00000720| 74 61 74 69 63 20 76 61 | 72 73 20 2a 2f 0d 7d 0d |tatic va|rs */.}.|
|00000730| 0d 0d 0d 2f 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |.../****|********|
|00000740| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000750| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000760| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000770| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000780| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2f 0d 0d 76 6f |********|***/..vo|
|00000790| 69 64 20 49 6e 69 74 69 | 61 6c 69 7a 65 50 72 6f |id Initi|alizePro|
|000007a0| 67 20 28 45 78 74 4d 6f | 64 75 6c 65 73 50 61 72 |g (ExtMo|dulesPar|
|000007b0| 61 6d 42 6c 6f 63 6b 2a | 20 70 62 29 0d 09 2f 2a |amBlock*| pb)../*|
|000007c0| 20 43 61 6e 20 62 65 20 | 6c 65 66 74 20 65 6d 74 | Can be |left emt|
|000007d0| 70 79 20 69 66 20 6e 6f | 74 20 6e 65 65 64 65 64 |py if no|t needed|
|000007e0| 2e 20 2a 2f 0d 09 2f 2a | 20 4f 6e 6c 79 20 75 73 |. */../*| Only us|
|000007f0| 65 64 20 62 79 20 61 64 | 76 61 6e 63 65 64 20 70 |ed by ad|vanced p|
|00000800| 72 6f 67 72 61 6d 6d 65 | 72 73 2e 20 2a 2f 0d 09 |rogramme|rs. */..|
|00000810| 2f 2a 20 63 61 6c 6c 65 | 64 20 77 68 65 6e 20 74 |/* calle|d when t|
|00000820| 68 65 20 72 65 73 6f 75 | 72 63 65 20 69 73 20 6c |he resou|rce is l|
|00000830| 69 6e 6b 65 64 20 74 6f | 20 70 72 6f 46 69 74 20 |inked to| proFit |
|00000840| 61 66 74 65 72 20 53 65 | 74 55 70 20 77 61 73 20 |after Se|tUp was |
|00000850| 63 61 6c 6c 65 64 20 2a | 2f 0d 7b 0d 09 4d 79 53 |called *|/.{..MyS|
|00000860| 74 61 74 69 63 56 61 72 | 73 2a 20 76 73 20 3d 20 |taticVar|s* vs = |
|00000870| 28 4d 79 53 74 61 74 69 | 63 56 61 72 73 2a 29 70 |(MyStati|cVars*)p|
|00000880| 62 2d 3e 67 6c 6f 62 61 | 6c 73 3b 0d 09 76 73 2d |b->globa|ls;..vs-|
|00000890| 3e 66 69 72 73 74 4c 65 | 76 65 6c 20 3d 20 2d 31 |>firstLe|vel = -1|
|000008a0| 3b 09 09 09 09 09 09 09 | 2f 2f 20 73 65 74 20 64 |;.......|// set d|
|000008b0| 65 66 61 75 6c 74 20 76 | 61 6c 75 65 73 0d 09 76 |efault v|alues..v|
|000008c0| 73 2d 3e 6c 61 73 74 4c | 65 76 65 6c 20 3d 20 31 |s->lastL|evel = 1|
|000008d0| 3b 0d 09 76 73 2d 3e 6c | 65 76 65 6c 53 74 65 70 |;..vs->l|evelStep|
|000008e0| 20 3d 20 30 2e 32 3b 0d | 09 76 73 2d 3e 78 31 50 | = 0.2;.|.vs->x1P|
|000008f0| 61 72 61 6d 20 3d 20 30 | 3b 0d 09 76 73 2d 3e 78 |aram = 0|;..vs->x|
|00000900| 32 50 61 72 61 6d 20 3d | 20 31 3b 0d 09 76 73 2d |2Param =| 1;..vs-|
|00000910| 3e 78 31 52 65 73 20 3d | 20 31 30 30 3b 0d 09 76 |>x1Res =| 100;..v|
|00000920| 73 2d 3e 78 32 52 65 73 | 20 3d 20 31 30 30 3b 0d |s->x2Res| = 100;.|
|00000930| 09 76 73 2d 3e 78 31 4d | 69 6e 20 3d 20 2d 31 3b |.vs->x1M|in = -1;|
|00000940| 0d 09 76 73 2d 3e 78 31 | 4d 61 78 20 3d 20 31 3b |..vs->x1|Max = 1;|
|00000950| 0d 09 76 73 2d 3e 78 32 | 4d 69 6e 20 3d 20 2d 31 |..vs->x2|Min = -1|
|00000960| 3b 0d 09 76 73 2d 3e 78 | 32 4d 61 78 20 3d 20 31 |;..vs->x|2Max = 1|
|00000970| 3b 0d 09 76 73 2d 3e 75 | 73 65 43 75 72 72 65 6e |;..vs->u|seCurren|
|00000980| 74 47 72 61 70 68 20 3d | 20 74 72 75 65 3b 0d 09 |tGraph =| true;..|
|00000990| 76 73 2d 3e 63 75 73 74 | 6f 6d 43 6f 6e 74 6f 75 |vs->cust|omContou|
|000009a0| 72 57 69 6e 64 6f 77 20 | 3d 20 30 3b 0d 09 76 73 |rWindow |= 0;..vs|
|000009b0| 2d 3e 63 75 73 74 6f 6d | 43 6f 6e 74 6f 75 72 43 |->custom|ContourC|
|000009c0| 6f 6c 75 6d 6e 20 3d 20 | 30 3b 0d 7d 0d 0d 2f 2a |olumn = |0;.}../*|
|000009d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000009e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000009f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000a00| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000a10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000a20| 2a 2a 2a 2a 2a 2a 2f 0d | 0d 65 6e 75 6d 20 7b 0d |******/.|.enum {.|
|00000a30| 09 66 69 72 73 74 4c 65 | 76 65 6c 54 69 74 6c 65 |.firstLe|velTitle|
|00000a40| 49 74 65 6d 20 3d 20 33 | 2c 0d 09 6c 61 73 74 4c |Item = 3|,..lastL|
|00000a50| 65 76 65 6c 54 69 74 6c | 65 49 74 65 6d 2c 0d 09 |evelTitl|eItem,..|
|00000a60| 64 69 73 74 61 6e 63 65 | 54 69 74 6c 65 49 74 65 |distance|TitleIte|
|00000a70| 6d 2c 0d 09 66 69 72 73 | 74 4c 65 76 65 6c 49 74 |m,..firs|tLevelIt|
|00000a80| 65 6d 20 3d 20 36 2c 0d | 09 6c 61 73 74 4c 65 76 |em = 6,.|.lastLev|
|00000a90| 65 6c 49 74 65 6d 2c 0d | 09 64 69 73 74 61 6e 63 |elItem,.|.distanc|
|00000aa0| 65 49 74 65 6d 2c 0d 09 | 78 31 50 6f 70 75 70 49 |eItem,..|x1PopupI|
|00000ab0| 74 65 6d 20 3d 20 39 2c | 0d 09 78 31 46 72 6f 6d |tem = 9,|..x1From|
|00000ac0| 49 74 65 6d 20 3d 20 31 | 31 2c 0d 09 78 31 54 6f |Item = 1|1,..x1To|
|00000ad0| 49 74 65 6d 20 3d 20 31 | 33 2c 0d 09 78 31 52 65 |Item = 1|3,..x1Re|
|00000ae0| 73 49 74 65 6d 20 3d 20 | 32 30 2c 0d 09 78 32 50 |sItem = |20,..x2P|
|00000af0| 6f 70 75 70 49 74 65 6d | 20 3d 20 31 34 2c 0d 09 |opupItem| = 14,..|
|00000b00| 78 32 46 72 6f 6d 49 74 | 65 6d 20 3d 20 31 36 2c |x2FromIt|em = 16,|
|00000b10| 0d 09 78 32 54 6f 49 74 | 65 6d 20 3d 20 31 38 2c |..x2ToIt|em = 18,|
|00000b20| 0d 09 78 32 52 65 73 49 | 74 65 6d 20 3d 20 32 32 |..x2ResI|tem = 22|
|00000b30| 2c 0d 09 75 73 65 43 75 | 72 72 65 6e 74 47 72 61 |,..useCu|rrentGra|
|00000b40| 70 68 49 74 65 6d 20 3d | 20 32 33 2c 0d 09 72 65 |phItem =| 23,..re|
|00000b50| 67 75 6c 61 72 43 6f 6e | 74 6f 75 72 49 74 65 6d |gularCon|tourItem|
|00000b60| 20 3d 20 32 34 2c 0d 09 | 63 75 73 74 6f 6d 43 6f | = 24,..|customCo|
|00000b70| 6e 74 6f 75 72 49 74 65 | 6d 20 3d 20 32 35 2c 0d |ntourIte|m = 25,.|
|00000b80| 09 77 69 6e 64 6f 77 49 | 74 65 6d 20 3d 20 32 36 |.windowI|tem = 26|
|00000b90| 2c 0d 09 63 6f 6c 75 6d | 6e 49 74 65 6d 20 3d 20 |,..colum|nItem = |
|00000ba0| 32 37 2c 0d 09 68 65 6c | 70 42 75 74 74 6f 6e 49 |27,..hel|pButtonI|
|00000bb0| 74 65 6d 20 3d 20 32 38 | 0d 09 7d 3b 0d 0d 73 74 |tem = 28|..};..st|
|00000bc0| 61 74 69 63 20 76 6f 69 | 64 20 43 72 65 61 74 65 |atic voi|d Create|
|00000bd0| 50 61 72 61 6d 50 6f 70 | 75 70 28 44 69 61 6c 6f |ParamPop|up(Dialo|
|00000be0| 67 44 61 74 61 2a 20 64 | 6c 67 2c 20 73 68 6f 72 |gData* d|lg, shor|
|00000bf0| 74 20 69 74 65 6d 49 44 | 2c 20 73 68 6f 72 74 20 |t itemID|, short |
|00000c00| 76 61 6c 75 65 29 0d 09 | 2f 2f 20 63 72 65 61 74 |value)..|// creat|
|00000c10| 65 73 20 61 20 70 6f 70 | 75 70 20 66 6f 72 20 58 |es a pop|up for X|
|00000c20| 31 2c 20 58 32 0d 7b 0d | 09 4d 65 6e 75 48 61 6e |1, X2.{.|.MenuHan|
|00000c30| 64 6c 65 09 09 6d 65 6e | 75 3b 0d 09 73 68 6f 72 |dle..men|u;..shor|
|00000c40| 74 09 09 09 69 2c 20 6e | 72 50 61 72 61 6d 73 3b |t...i, n|rParams;|
|00000c50| 0d 09 53 74 72 32 35 35 | 09 09 09 6e 61 6d 65 3b |..Str255|...name;|
|00000c60| 0d 09 43 6f 6e 74 72 6f | 6c 48 61 6e 64 6c 65 09 |..Contro|lHandle.|
|00000c70| 63 6f 6e 74 72 6f 6c 20 | 3d 20 28 43 6f 6e 74 72 |control |= (Contr|
|00000c80| 6f 6c 48 61 6e 64 6c 65 | 29 4d 79 47 65 74 49 74 |olHandle|)MyGetIt|
|00000c90| 65 6d 48 61 6e 64 6c 65 | 28 64 6c 67 2c 69 74 65 |emHandle|(dlg,ite|
|00000ca0| 6d 49 44 29 3b 0d 09 69 | 66 20 28 63 6f 6e 74 72 |mID);..i|f (contr|
|00000cb0| 6f 6c 3d 3d 6e 69 6c 29 | 20 72 65 74 75 72 6e 3b |ol==nil)| return;|
|00000cc0| 09 09 09 09 09 09 09 2f | 2f 20 73 68 6f 75 6c 64 |......./|/ should|
|00000cd0| 20 6e 65 76 65 72 20 68 | 61 70 70 65 6e 0d 09 6d | never h|appen..m|
|00000ce0| 65 6e 75 20 3d 20 28 2a | 2a 28 50 6f 70 75 70 50 |enu = (*|*(PopupP|
|00000cf0| 72 69 76 61 74 65 44 61 | 74 61 2a 2a 29 28 2a 2a |rivateDa|ta**)(**|
|00000d00| 63 6f 6e 74 72 6f 6c 29 | 2e 63 6f 6e 74 72 6c 44 |control)|.contrlD|
|00000d10| 61 74 61 29 2e 6d 48 61 | 6e 64 6c 65 3b 0d 09 69 |ata).mHa|ndle;..i|
|00000d20| 66 20 28 6d 65 6e 75 3d | 3d 6e 69 6c 29 20 72 65 |f (menu=|=nil) re|
|00000d30| 74 75 72 6e 3b 09 09 09 | 09 09 09 09 09 2f 2f 20 |turn;...|.....// |
|00000d40| 73 68 6f 75 6c 64 20 6e | 65 76 65 72 20 68 61 70 |should n|ever hap|
|00000d50| 70 65 6e 0d 09 6e 72 50 | 61 72 61 6d 73 20 3d 20 |pen..nrP|arams = |
|00000d60| 47 65 74 4e 75 6d 46 75 | 6e 63 74 69 6f 6e 50 61 |GetNumFu|nctionPa|
|00000d70| 72 61 6d 73 28 22 5c 70 | 22 29 3b 09 09 09 09 2f |rams("\p|");..../|
|00000d80| 2f 20 6e 75 6d 62 65 72 | 20 6f 66 20 70 61 72 61 |/ number| of para|
|00000d90| 6d 65 74 65 72 73 20 6f | 66 20 63 75 72 72 65 6e |meters o|f curren|
|00000da0| 74 20 66 75 6e 63 74 69 | 6f 6e 0d 09 66 6f 72 20 |t functi|on..for |
|00000db0| 28 69 3d 31 3b 20 69 3c | 3d 6e 72 50 61 72 61 6d |(i=1; i<|=nrParam|
|00000dc0| 73 3b 20 69 2b 2b 29 0d | 09 7b 0d 09 09 47 65 74 |s; i++).|.{...Get|
|00000dd0| 46 75 6e 63 74 69 6f 6e | 50 61 72 61 6d 4e 61 6d |Function|ParamNam|
|00000de0| 65 28 22 5c 70 22 2c 69 | 2c 6e 61 6d 65 29 3b 0d |e("\p",i|,name);.|
|00000df0| 09 09 41 64 64 49 74 65 | 6d 54 6f 4d 65 6e 75 28 |..AddIte|mToMenu(|
|00000e00| 6d 65 6e 75 2c 20 6e 61 | 6d 65 29 3b 0d 09 7d 0d |menu, na|me);..}.|
|00000e10| 09 53 65 74 43 6f 6e 74 | 72 6f 6c 4d 61 78 69 6d |.SetCont|rolMaxim|
|00000e20| 75 6d 28 63 6f 6e 74 72 | 6f 6c 2c 20 6e 72 50 61 |um(contr|ol, nrPa|
|00000e30| 72 61 6d 73 2b 32 29 3b | 0d 09 69 66 20 28 76 61 |rams+2);|..if (va|
|00000e40| 6c 75 65 20 3e 20 6e 72 | 50 61 72 61 6d 73 29 20 |lue > nr|Params) |
|00000e50| 76 61 6c 75 65 20 3d 20 | 6e 72 50 61 72 61 6d 73 |value = |nrParams|
|00000e60| 3b 0d 09 53 65 74 43 6f | 6e 74 72 6f 6c 56 61 6c |;..SetCo|ntrolVal|
|00000e70| 75 65 28 63 6f 6e 74 72 | 6f 6c 2c 20 76 61 6c 75 |ue(contr|ol, valu|
|00000e80| 65 3f 20 76 61 6c 75 65 | 2b 32 3a 20 76 61 6c 75 |e? value|+2: valu|
|00000e90| 65 2b 31 29 3b 0d 7d 0d | 0d 73 74 61 74 69 63 20 |e+1);.}.|.static |
|00000ea0| 73 68 6f 72 74 20 47 65 | 74 50 61 72 61 6d 50 6f |short Ge|tParamPo|
|00000eb0| 70 75 70 28 44 69 61 6c | 6f 67 44 61 74 61 2a 20 |pup(Dial|ogData* |
|00000ec0| 64 6c 67 2c 20 73 68 6f | 72 74 20 69 74 65 6d 49 |dlg, sho|rt itemI|
|00000ed0| 44 29 0d 7b 0d 09 73 68 | 6f 72 74 09 76 61 6c 75 |D).{..sh|ort.valu|
|00000ee0| 65 20 3d 20 4d 79 47 65 | 74 49 74 65 6d 56 61 6c |e = MyGe|tItemVal|
|00000ef0| 75 65 28 64 6c 67 2c 20 | 69 74 65 6d 49 44 29 3b |ue(dlg, |itemID);|
|00000f00| 0d 09 69 66 20 28 76 61 | 6c 75 65 20 3e 20 31 29 |..if (va|lue > 1)|
|00000f10| 20 72 65 74 75 72 6e 20 | 76 61 6c 75 65 2d 32 3b | return |value-2;|
|00000f20| 0d 09 65 6c 73 65 20 72 | 65 74 75 72 6e 20 76 61 |..else r|eturn va|
|00000f30| 6c 75 65 2d 31 3b 0d 7d | 0d 0d 73 74 61 74 69 63 |lue-1;.}|..static|
|00000f40| 20 42 6f 6f 6c 65 61 6e | 20 47 65 74 52 65 73 6f | Boolean| GetReso|
|00000f50| 6c 75 74 69 6f 6e 28 44 | 69 61 6c 6f 67 44 61 74 |lution(D|ialogDat|
|00000f60| 61 2a 20 64 6c 67 2c 20 | 73 68 6f 72 74 20 69 74 |a* dlg, |short it|
|00000f70| 65 6d 49 44 2c 20 6c 6f | 6e 67 2a 20 63 6f 6e 73 |emID, lo|ng* cons|
|00000f80| 74 20 76 61 6c 75 65 29 | 0d 7b 0d 09 6c 6f 6e 67 |t value)|.{..long|
|00000f90| 20 76 61 6c 3b 0d 09 69 | 66 20 28 4d 79 47 65 74 | val;..i|f (MyGet|
|00000fa0| 4c 6f 6e 67 49 74 65 6d | 28 64 6c 67 2c 20 69 74 |LongItem|(dlg, it|
|00000fb0| 65 6d 49 44 2c 20 26 76 | 61 6c 29 20 3d 3d 20 66 |emID, &v|al) == f|
|00000fc0| 61 6c 73 65 29 20 72 65 | 74 75 72 6e 20 66 61 6c |alse) re|turn fal|
|00000fd0| 73 65 3b 0d 09 69 66 20 | 28 76 61 6c 20 3c 20 32 |se;..if |(val < 2|
|00000fe0| 20 7c 7c 20 76 61 6c 20 | 3e 20 31 30 30 30 30 29 | || val |> 10000)|
|00000ff0| 0d 09 7b 09 4d 79 53 65 | 6c 65 63 74 49 74 65 6d |..{.MySe|lectItem|
|00001000| 54 65 78 74 28 64 6c 67 | 2c 20 69 74 65 6d 49 44 |Text(dlg|, itemID|
|00001010| 2c 20 30 2c 20 30 78 37 | 46 46 46 29 3b 0d 09 09 |, 0, 0x7|FFF);...|
|00001020| 53 79 73 42 65 65 70 28 | 33 30 29 3b 0d 09 09 72 |SysBeep(|30);...r|
|00001030| 65 74 75 72 6e 20 66 61 | 6c 73 65 3b 0d 09 7d 0d |eturn fa|lse;..}.|
|00001040| 09 2a 76 61 6c 75 65 20 | 3d 20 76 61 6c 3b 0d 09 |.*value |= val;..|
|00001050| 72 65 74 75 72 6e 20 74 | 72 75 65 3b 0d 7d 0d 0d |return t|rue;.}..|
|00001060| 73 74 61 74 69 63 20 64 | 6f 75 62 6c 65 20 43 61 |static d|ouble Ca|
|00001070| 6c 6c 4d 79 46 75 6e 63 | 74 69 6f 6e 28 73 68 6f |llMyFunc|tion(sho|
|00001080| 72 74 20 78 31 50 61 72 | 61 6d 2c 20 73 68 6f 72 |rt x1Par|am, shor|
|00001090| 74 20 78 32 50 61 72 61 | 6d 2c 20 64 6f 75 62 6c |t x2Para|m, doubl|
|000010a0| 65 20 78 31 56 61 6c 75 | 65 2c 20 64 6f 75 62 6c |e x1Valu|e, doubl|
|000010b0| 65 20 78 32 56 61 6c 75 | 65 2c 20 64 6f 75 62 6c |e x2Valu|e, doubl|
|000010c0| 65 20 78 29 0d 09 2f 2f | 20 70 61 72 61 6d 3d 30 |e x)..//| param=0|
|000010d0| 3a 20 78 2c 20 6f 74 68 | 65 72 77 69 73 65 20 70 |: x, oth|erwise p|
|000010e0| 61 72 61 6d 20 3e 20 30 | 0d 7b 0d 09 69 66 20 28 |aram > 0|.{..if (|
|000010f0| 78 31 50 61 72 61 6d 20 | 21 3d 20 30 29 20 53 65 |x1Param |!= 0) Se|
|00001100| 74 46 75 6e 63 74 69 6f | 6e 50 61 72 61 6d 28 22 |tFunctio|nParam("|
|00001110| 5c 70 22 2c 78 31 50 61 | 72 61 6d 2c 20 78 31 56 |\p",x1Pa|ram, x1V|
|00001120| 61 6c 75 65 29 3b 0d 09 | 65 6c 73 65 20 78 20 3d |alue);..|else x =|
|00001130| 20 78 31 56 61 6c 75 65 | 3b 0d 09 69 66 20 28 78 | x1Value|;..if (x|
|00001140| 32 50 61 72 61 6d 20 21 | 3d 20 30 29 20 53 65 74 |2Param !|= 0) Set|
|00001150| 46 75 6e 63 74 69 6f 6e | 50 61 72 61 6d 28 22 5c |Function|Param("\|
|00001160| 70 22 2c 78 32 50 61 72 | 61 6d 2c 20 78 32 56 61 |p",x2Par|am, x2Va|
|00001170| 6c 75 65 29 3b 0d 09 65 | 6c 73 65 20 78 20 3d 20 |lue);..e|lse x = |
|00001180| 78 32 56 61 6c 75 65 3b | 0d 09 72 65 74 75 72 6e |x2Value;|..return|
|00001190| 20 43 61 6c 6c 46 75 6e | 63 74 69 6f 6e 28 22 5c | CallFun|ction("\|
|000011a0| 70 22 2c 20 78 29 3b 0d | 7d 0d 0d 73 74 61 74 69 |p", x);.|}..stati|
|000011b0| 63 20 42 6f 6f 6c 65 61 | 6e 20 4d 79 46 75 6e 63 |c Boolea|n MyFunc|
|000011c0| 74 69 6f 6e 28 64 6f 75 | 62 6c 65 20 78 31 2c 20 |tion(dou|ble x1, |
|000011d0| 64 6f 75 62 6c 65 20 78 | 32 2c 20 64 6f 75 62 6c |double x|2, doubl|
|000011e0| 65 2a 20 63 6f 6e 73 74 | 20 78 33 2c 20 76 6f 69 |e* const| x3, voi|
|000011f0| 64 2a 20 70 61 72 61 6d | 29 0d 7b 0d 09 4d 79 53 |d* param|).{..MyS|
|00001200| 74 61 74 69 63 56 61 72 | 73 2a 20 76 73 20 3d 20 |taticVar|s* vs = |
|00001210| 28 4d 79 53 74 61 74 69 | 63 56 61 72 73 2a 29 70 |(MyStati|cVars*)p|
|00001220| 61 72 61 6d 3b 0d 09 73 | 68 6f 72 74 09 78 31 50 |aram;..s|hort.x1P|
|00001230| 61 72 61 6d 20 3d 20 76 | 73 2d 3e 78 31 50 61 72 |aram = v|s->x1Par|
|00001240| 61 6d 3b 0d 09 73 68 6f | 72 74 09 78 32 50 61 72 |am;..sho|rt.x2Par|
|00001250| 61 6d 20 3d 20 76 73 2d | 3e 78 32 50 61 72 61 6d |am = vs-|>x2Param|
|00001260| 3b 0d 09 64 6f 75 62 6c | 65 09 78 20 3d 20 30 3b |;..doubl|e.x = 0;|
|00001270| 0d 09 53 74 72 32 35 35 | 09 64 75 6d 6d 79 53 74 |..Str255|.dummySt|
|00001280| 72 69 6e 67 3b 0d 0d 09 | 69 66 20 28 78 31 50 61 |ring;...|if (x1Pa|
|00001290| 72 61 6d 20 21 3d 20 30 | 29 20 53 65 74 46 75 6e |ram != 0|) SetFun|
|000012a0| 63 74 69 6f 6e 50 61 72 | 61 6d 28 22 5c 70 22 2c |ctionPar|am("\p",|
|000012b0| 78 31 50 61 72 61 6d 2c | 20 78 31 29 3b 0d 09 65 |x1Param,| x1);..e|
|000012c0| 6c 73 65 20 78 20 3d 20 | 78 31 3b 0d 09 69 66 20 |lse x = |x1;..if |
|000012d0| 28 78 32 50 61 72 61 6d | 20 21 3d 20 30 29 20 53 |(x2Param| != 0) S|
|000012e0| 65 74 46 75 6e 63 74 69 | 6f 6e 50 61 72 61 6d 28 |etFuncti|onParam(|
|000012f0| 22 5c 70 22 2c 78 32 50 | 61 72 61 6d 2c 20 78 32 |"\p",x2P|aram, x2|
|00001300| 29 3b 0d 09 65 6c 73 65 | 20 78 20 3d 20 78 32 3b |);..else| x = x2;|
|00001310| 0d 09 2a 78 33 20 3d 20 | 43 61 6c 6c 46 75 6e 63 |..*x3 = |CallFunc|
|00001320| 74 69 6f 6e 28 22 5c 70 | 22 2c 20 78 29 3b 0d 09 |tion("\p|", x);..|
|00001330| 69 66 20 28 47 65 74 41 | 6e 64 53 65 74 53 74 61 |if (GetA|ndSetSta|
|00001340| 74 75 73 28 2d 31 2c 20 | 64 75 6d 6d 79 53 74 72 |tus(-1, |dummyStr|
|00001350| 69 6e 67 29 20 3d 3d 20 | 33 29 09 09 09 2f 2f 20 |ing) == |3)...// |
|00001360| 69 66 20 61 20 72 75 6e | 2d 74 69 6d 65 20 65 72 |if a run|-time er|
|00001370| 72 6f 72 20 6f 63 63 75 | 72 65 64 0d 09 7b 09 47 |ror occu|red..{.G|
|00001380| 65 74 41 6e 64 53 65 74 | 53 74 61 74 75 73 28 30 |etAndSet|Status(0|
|00001390| 2c 20 64 75 6d 6d 79 53 | 74 72 69 6e 67 29 3b 09 |, dummyS|tring);.|
|000013a0| 09 09 09 2f 2f 20 74 68 | 65 6e 20 72 65 73 65 74 |...// th|en reset|
|000013b0| 20 69 74 0d 09 09 72 65 | 74 75 72 6e 20 66 61 6c | it...re|turn fal|
|000013c0| 73 65 3b 0d 09 7d 0d 09 | 72 65 74 75 72 6e 20 21 |se;..}..|return !|
|000013d0| 4e 75 6d 62 65 72 49 6e | 76 61 6c 69 64 28 2a 78 |NumberIn|valid(*x|
|000013e0| 33 29 3b 0d 7d 2f 2f 4d | 79 46 75 6e 63 74 69 6f |3);.}//M|yFunctio|
|000013f0| 6e 0d 0d 73 74 61 74 69 | 63 20 76 6f 69 64 20 53 |n..stati|c void S|
|00001400| 68 6f 77 48 69 64 65 49 | 74 65 6d 73 28 44 69 61 |howHideI|tems(Dia|
|00001410| 6c 6f 67 44 61 74 61 2a | 20 63 6f 6e 73 74 20 64 |logData*| const d|
|00001420| 6c 67 29 0d 09 2f 2f 20 | 73 68 6f 77 73 20 61 6e |lg)..// |shows an|
|00001430| 64 20 68 69 64 65 73 20 | 74 68 65 20 69 74 65 6d |d hides |the item|
|00001440| 73 20 69 6e 20 74 68 65 | 20 6c 6f 77 65 72 20 70 |s in the| lower p|
|00001450| 61 72 74 20 6f 66 20 74 | 68 65 20 64 69 61 6c 6f |art of t|he dialo|
|00001460| 67 0d 7b 0d 09 73 74 61 | 74 69 63 20 63 6f 6e 73 |g.{..sta|tic cons|
|00001470| 74 20 63 68 61 72 20 72 | 65 67 75 6c 61 72 49 74 |t char r|egularIt|
|00001480| 65 6d 73 5b 5d 20 3d 20 | 7b 66 69 72 73 74 4c 65 |ems[] = |{firstLe|
|00001490| 76 65 6c 54 69 74 6c 65 | 49 74 65 6d 2c 20 6c 61 |velTitle|Item, la|
|000014a0| 73 74 4c 65 76 65 6c 54 | 69 74 6c 65 49 74 65 6d |stLevelT|itleItem|
|000014b0| 2c 0d 09 09 09 64 69 73 | 74 61 6e 63 65 54 69 74 |,....dis|tanceTit|
|000014c0| 6c 65 49 74 65 6d 2c 20 | 66 69 72 73 74 4c 65 76 |leItem, |firstLev|
|000014d0| 65 6c 49 74 65 6d 2c 20 | 6c 61 73 74 4c 65 76 65 |elItem, |lastLeve|
|000014e0| 6c 49 74 65 6d 2c 20 64 | 69 73 74 61 6e 63 65 49 |lItem, d|istanceI|
|000014f0| 74 65 6d 2c 20 30 7d 3b | 0d 09 73 74 61 74 69 63 |tem, 0};|..static|
|00001500| 20 63 6f 6e 73 74 20 63 | 68 61 72 20 63 75 73 74 | const c|har cust|
|00001510| 6f 6d 49 74 65 6d 73 5b | 5d 20 3d 20 7b 77 69 6e |omItems[|] = {win|
|00001520| 64 6f 77 49 74 65 6d 2c | 20 63 6f 6c 75 6d 6e 49 |dowItem,| columnI|
|00001530| 74 65 6d 2c 20 30 7d 3b | 0d 0d 09 63 68 61 72 2a |tem, 0};|...char*|
|00001540| 09 69 74 65 6d 73 54 6f | 53 68 6f 77 3b 0d 09 63 |.itemsTo|Show;..c|
|00001550| 68 61 72 2a 09 69 74 65 | 6d 73 54 6f 48 69 64 65 |har*.ite|msToHide|
|00001560| 3b 0d 0d 09 69 66 20 28 | 4d 79 47 65 74 49 74 65 |;...if (|MyGetIte|
|00001570| 6d 56 61 6c 75 65 28 64 | 6c 67 2c 20 72 65 67 75 |mValue(d|lg, regu|
|00001580| 6c 61 72 43 6f 6e 74 6f | 75 72 49 74 65 6d 29 29 |larConto|urItem))|
|00001590| 0d 09 7b 09 69 74 65 6d | 73 54 6f 53 68 6f 77 20 |..{.item|sToShow |
|000015a0| 3d 20 28 63 68 61 72 2a | 29 72 65 67 75 6c 61 72 |= (char*|)regular|
|000015b0| 49 74 65 6d 73 3b 0d 09 | 09 69 74 65 6d 73 54 6f |Items;..|.itemsTo|
|000015c0| 48 69 64 65 20 3d 20 28 | 63 68 61 72 2a 29 63 75 |Hide = (|char*)cu|
|000015d0| 73 74 6f 6d 49 74 65 6d | 73 3b 0d 09 7d 0d 09 65 |stomItem|s;..}..e|
|000015e0| 6c 73 65 0d 09 7b 09 69 | 74 65 6d 73 54 6f 53 68 |lse..{.i|temsToSh|
|000015f0| 6f 77 20 3d 20 28 63 68 | 61 72 2a 29 63 75 73 74 |ow = (ch|ar*)cust|
|00001600| 6f 6d 49 74 65 6d 73 3b | 0d 09 09 69 74 65 6d 73 |omItems;|...items|
|00001610| 54 6f 48 69 64 65 20 3d | 20 28 63 68 61 72 2a 29 |ToHide =| (char*)|
|00001620| 72 65 67 75 6c 61 72 49 | 74 65 6d 73 3b 0d 09 7d |regularI|tems;..}|
|00001630| 0d 09 77 68 69 6c 65 20 | 28 2a 69 74 65 6d 73 54 |..while |(*itemsT|
|00001640| 6f 53 68 6f 77 29 20 4d | 79 53 68 6f 77 49 74 65 |oShow) M|yShowIte|
|00001650| 6d 28 64 6c 67 2c 20 2a | 69 74 65 6d 73 54 6f 53 |m(dlg, *|itemsToS|
|00001660| 68 6f 77 2b 2b 29 3b 0d | 09 77 68 69 6c 65 20 28 |how++);.|.while (|
|00001670| 2a 69 74 65 6d 73 54 6f | 48 69 64 65 29 20 4d 79 |*itemsTo|Hide) My|
|00001680| 48 69 64 65 49 74 65 6d | 28 64 6c 67 2c 20 2a 69 |HideItem|(dlg, *i|
|00001690| 74 65 6d 73 54 6f 48 69 | 64 65 2b 2b 29 3b 0d 7d |temsToHi|de++);.}|
|000016a0| 0d 0d 0d 76 6f 69 64 20 | 52 75 6e 28 45 78 74 4d |...void |Run(ExtM|
|000016b0| 6f 64 75 6c 65 73 50 61 | 72 61 6d 42 6c 6f 63 6b |odulesPa|ramBlock|
|000016c0| 2a 20 70 62 29 0d 09 2f | 2a 20 63 61 6c 6c 65 64 |* pb)../|* called|
|000016d0| 20 74 6f 20 65 78 65 63 | 75 74 65 20 74 68 65 20 | to exec|ute the |
|000016e0| 70 72 6f 67 72 61 6d 20 | 2a 2f 0d 7b 0d 09 50 6c |program |*/.{..Pl|
|000016f0| 6f 74 74 69 6e 67 44 61 | 74 61 2a 20 76 3d 6e 69 |ottingDa|ta* v=ni|
|00001700| 6c 3b 0d 09 4d 79 53 74 | 61 74 69 63 56 61 72 73 |l;..MySt|aticVars|
|00001710| 2a 20 76 73 20 3d 20 28 | 4d 79 53 74 61 74 69 63 |* vs = (|MyStatic|
|00001720| 56 61 72 73 2a 29 70 62 | 2d 3e 67 6c 6f 62 61 6c |Vars*)pb|->global|
|00001730| 73 3b 0d 09 42 6f 6f 6c | 65 61 6e 09 09 75 73 65 |s;..Bool|ean..use|
|00001740| 43 75 72 72 65 6e 74 47 | 72 61 70 68 20 3d 20 74 |CurrentG|raph = t|
|00001750| 72 75 65 3b 0d 09 48 61 | 6e 64 6c 65 09 09 6d 79 |rue;..Ha|ndle..my|
|00001760| 4d 65 6d 6f 72 79 20 3d | 20 6e 69 6c 3b 0d 09 6c |Memory =| nil;..l|
|00001770| 6f 6e 67 09 09 6f 6c 64 | 44 61 74 61 57 69 6e 64 |ong..old|DataWind|
|00001780| 6f 77 20 3d 20 47 65 74 | 43 75 72 72 65 6e 74 57 |ow = Get|CurrentW|
|00001790| 69 6e 64 6f 77 28 64 61 | 74 61 54 79 70 65 29 3b |indow(da|taType);|
|000017a0| 0d 0d 09 69 66 20 28 54 | 65 73 74 53 74 6f 70 28 |...if (T|estStop(|
|000017b0| 29 29 20 72 65 74 75 72 | 6e 3b 0d 0d 09 7b 09 44 |)) retur|n;...{.D|
|000017c0| 69 61 6c 6f 67 44 61 74 | 61 2a 09 64 6c 67 3b 0d |ialogDat|a*.dlg;.|
|000017d0| 09 09 73 68 6f 72 74 09 | 09 69 74 65 6d 48 69 74 |..short.|.itemHit|
|000017e0| 3b 0d 09 09 73 68 6f 72 | 74 09 09 72 65 73 46 69 |;...shor|t..resFi|
|000017f0| 6c 65 20 3d 20 46 53 70 | 4f 70 65 6e 52 65 73 46 |le = FSp|OpenResF|
|00001800| 69 6c 65 28 47 65 74 4d | 6f 64 75 6c 65 46 69 6c |ile(GetM|oduleFil|
|00001810| 65 28 29 2c 20 66 73 43 | 75 72 50 65 72 6d 29 3b |e(), fsC|urPerm);|
|00001820| 0d 09 09 64 6f 75 62 6c | 65 09 09 78 31 4d 69 6e |...doubl|e..x1Min|
|00001830| 20 3d 20 76 73 2d 3e 78 | 31 4d 69 6e 2c 20 78 31 | = vs->x|1Min, x1|
|00001840| 4d 61 78 20 3d 20 76 73 | 2d 3e 78 31 4d 61 78 3b |Max = vs|->x1Max;|
|00001850| 0d 09 09 64 6f 75 62 6c | 65 09 09 78 32 4d 69 6e |...doubl|e..x2Min|
|00001860| 20 3d 20 76 73 2d 3e 78 | 32 4d 69 6e 2c 20 78 32 | = vs->x|2Min, x2|
|00001870| 4d 61 78 20 3d 20 76 73 | 2d 3e 78 32 4d 61 78 3b |Max = vs|->x2Max;|
|00001880| 0d 09 09 6c 6f 6e 67 09 | 09 63 75 73 74 6f 6d 43 |...long.|.customC|
|00001890| 6f 6e 74 6f 75 72 57 69 | 6e 64 6f 77 20 3d 20 76 |ontourWi|ndow = v|
|000018a0| 73 2d 3e 63 75 73 74 6f | 6d 43 6f 6e 74 6f 75 72 |s->custo|mContour|
|000018b0| 57 69 6e 64 6f 77 3b 0d | 09 09 6c 6f 6e 67 09 09 |Window;.|..long..|
|000018c0| 63 75 73 74 6f 6d 43 6f | 6e 74 6f 75 72 43 6f 6c |customCo|ntourCol|
|000018d0| 75 6d 6e 20 3d 20 76 73 | 2d 3e 63 75 73 74 6f 6d |umn = vs|->custom|
|000018e0| 43 6f 6e 74 6f 75 72 57 | 69 6e 64 6f 77 3b 0d 09 |ContourW|indow;..|
|000018f0| 09 42 6f 6f 6c 65 61 6e | 09 09 63 75 73 74 6f 6d |.Boolean|..custom|
|00001900| 43 6f 6e 74 6f 75 72 73 | 3b 0d 09 09 0d 09 09 69 |Contours|;......i|
|00001910| 66 20 28 72 65 73 46 69 | 6c 65 20 3d 3d 20 2d 31 |f (resFi|le == -1|
|00001920| 29 20 72 65 74 75 72 6e | 3b 0d 0d 09 09 64 6c 67 |) return|;....dlg|
|00001930| 20 3d 20 4d 79 47 65 74 | 4e 65 77 44 69 61 6c 6f | = MyGet|NewDialo|
|00001940| 67 28 33 30 30 30 30 2c | 20 31 2c 20 32 29 3b 0d |g(30000,| 1, 2);.|
|00001950| 09 09 69 66 20 28 64 6c | 67 20 3d 3d 20 6e 69 6c |..if (dl|g == nil|
|00001960| 29 20 53 74 6f 70 45 78 | 65 63 75 74 69 6f 6e 28 |) StopEx|ecution(|
|00001970| 29 3b 0d 09 09 65 6c 73 | 65 0d 09 09 7b 0d 09 09 |);...els|e...{...|
|00001980| 09 69 66 20 28 46 72 6f | 6e 74 6d 6f 73 74 57 69 |.if (Fro|ntmostWi|
|00001990| 6e 64 6f 77 28 64 72 61 | 77 69 6e 67 54 79 70 65 |ndow(dra|wingType|
|000019a0| 29 20 3d 3d 20 30 20 7c | 7c 20 47 65 74 43 75 72 |) == 0 ||| GetCur|
|000019b0| 72 65 6e 74 47 72 61 70 | 68 28 29 20 3d 3d 20 30 |rentGrap|h() == 0|
|000019c0| 29 09 2f 2f 20 69 66 20 | 6e 6f 20 64 72 61 77 69 |).// if |no drawi|
|000019d0| 6e 67 20 77 69 6e 64 6f | 77 20 6f 72 20 6e 6f 77 |ng windo|w or now|
|000019e0| 20 63 75 72 72 65 6e 74 | 20 67 72 61 70 68 0d 09 | current| graph..|
|000019f0| 09 09 7b 09 75 73 65 43 | 75 72 72 65 6e 74 47 72 |..{.useC|urrentGr|
|00001a00| 61 70 68 20 3d 20 66 61 | 6c 73 65 3b 0d 09 09 09 |aph = fa|lse;....|
|00001a10| 09 4d 79 48 69 6c 69 74 | 65 49 74 65 6d 28 64 6c |.MyHilit|eItem(dl|
|00001a20| 67 2c 20 75 73 65 43 75 | 72 72 65 6e 74 47 72 61 |g, useCu|rrentGra|
|00001a30| 70 68 49 74 65 6d 2c 20 | 32 35 35 29 3b 09 09 2f |phItem, |255);../|
|00001a40| 2f 20 64 69 73 61 62 6c | 65 0d 09 09 09 7d 20 65 |/ disabl|e....} e|
|00001a50| 6c 73 65 09 09 09 09 09 | 09 09 09 09 09 09 09 09 |lse.....|........|
|00001a60| 2f 2f 20 69 66 20 74 68 | 65 72 65 27 73 20 61 20 |// if th|ere's a |
|00001a70| 63 75 72 72 65 6e 74 20 | 67 72 61 70 68 0d 09 09 |current |graph...|
|00001a80| 09 09 47 65 74 47 72 61 | 70 68 43 6f 6f 72 64 69 |..GetGra|phCoordi|
|00001a90| 6e 61 74 65 73 20 28 26 | 78 31 4d 69 6e 2c 20 26 |nates (&|x1Min, &|
|00001aa0| 78 31 4d 61 78 2c 20 26 | 78 32 4d 69 6e 2c 20 26 |x1Max, &|x2Min, &|
|00001ab0| 78 32 4d 61 78 29 3b 09 | 2f 2f 20 75 73 65 20 72 |x2Max);.|// use r|
|00001ac0| 61 6e 67 65 20 6f 66 20 | 67 72 61 70 68 20 61 73 |ange of |graph as|
|00001ad0| 20 64 65 66 61 75 6c 74 | 0d 0d 09 09 09 69 66 20 | default|.....if |
|00001ae0| 28 76 73 2d 3e 63 75 73 | 74 6f 6d 43 6f 6e 74 6f |(vs->cus|tomConto|
|00001af0| 75 72 57 69 6e 64 6f 77 | 20 21 3d 20 30 20 26 26 |urWindow| != 0 &&|
|00001b00| 20 47 65 74 57 69 6e 64 | 6f 77 54 79 70 65 28 76 | GetWind|owType(v|
|00001b10| 73 2d 3e 63 75 73 74 6f | 6d 43 6f 6e 74 6f 75 72 |s->custo|mContour|
|00001b20| 57 69 6e 64 6f 77 29 3d | 3d 30 29 09 2f 2f 20 69 |Window)=|=0).// i|
|00001b30| 66 20 77 69 6e 64 6f 77 | 20 64 6f 65 73 20 6e 6f |f window| does no|
|00001b40| 74 20 65 78 69 73 74 20 | 61 6e 79 6d 6f 72 65 0d |t exist |anymore.|
|00001b50| 09 09 09 7b 09 76 73 2d | 3e 63 75 73 74 6f 6d 43 |...{.vs-|>customC|
|00001b60| 6f 6e 74 6f 75 72 57 69 | 6e 64 6f 77 20 3d 20 30 |ontourWi|ndow = 0|
|00001b70| 3b 0d 09 09 09 09 76 73 | 2d 3e 63 75 73 74 6f 6d |;.....vs|->custom|
|00001b80| 43 6f 6e 74 6f 75 72 43 | 6f 6c 75 6d 6e 20 3d 20 |ContourC|olumn = |
|00001b90| 30 3b 0d 09 09 09 7d 0d | 09 09 09 65 6c 73 65 20 |0;....}.|...else |
|00001ba0| 69 66 20 28 76 73 2d 3e | 63 75 73 74 6f 6d 43 6f |if (vs->|customCo|
|00001bb0| 6e 74 6f 75 72 57 69 6e | 64 6f 77 29 0d 09 09 09 |ntourWin|dow)....|
|00001bc0| 7b 0d 09 09 09 09 53 65 | 74 43 75 72 72 65 6e 74 |{.....Se|tCurrent|
|00001bd0| 57 69 6e 64 6f 77 28 76 | 73 2d 3e 63 75 73 74 6f |Window(v|s->custo|
|00001be0| 6d 43 6f 6e 74 6f 75 72 | 57 69 6e 64 6f 77 29 3b |mContour|Window);|
|00001bf0| 0d 09 09 09 09 69 66 20 | 28 76 73 2d 3e 63 75 73 |.....if |(vs->cus|
|00001c00| 74 6f 6d 43 6f 6e 74 6f | 75 72 43 6f 6c 75 6d 6e |tomConto|urColumn|
|00001c10| 20 3e 20 4e 72 43 6f 6c | 73 28 29 20 7c 7c 20 47 | > NrCol|s() || G|
|00001c20| 65 74 43 6f 6c 54 79 70 | 65 28 76 73 2d 3e 63 75 |etColTyp|e(vs->cu|
|00001c30| 73 74 6f 6d 43 6f 6e 74 | 6f 75 72 43 6f 6c 75 6d |stomCont|ourColum|
|00001c40| 6e 29 20 3d 3d 20 74 65 | 78 74 43 6f 6c 75 6d 6e |n) == te|xtColumn|
|00001c50| 29 09 09 09 2f 2f 20 69 | 66 20 77 69 6e 64 6f 77 |)...// i|f window|
|00001c60| 20 68 61 73 20 62 65 63 | 6f 6d 65 20 73 6d 61 6c | has bec|ome smal|
|00001c70| 6c 65 72 0d 09 09 09 09 | 09 76 73 2d 3e 63 75 73 |ler.....|.vs->cus|
|00001c80| 74 6f 6d 43 6f 6e 74 6f | 75 72 43 6f 6c 75 6d 6e |tomConto|urColumn|
|00001c90| 20 3d 20 31 3b 0d 09 09 | 09 09 53 65 74 43 75 72 | = 1;...|..SetCur|
|00001ca0| 72 65 6e 74 57 69 6e 64 | 6f 77 28 6f 6c 64 44 61 |rentWind|ow(oldDa|
|00001cb0| 74 61 57 69 6e 64 6f 77 | 29 3b 0d 09 09 09 7d 0d |taWindow|);....}.|
|00001cc0| 09 09 09 63 75 73 74 6f | 6d 43 6f 6e 74 6f 75 72 |...custo|mContour|
|00001cd0| 73 20 3d 20 76 73 2d 3e | 63 75 73 74 6f 6d 43 6f |s = vs->|customCo|
|00001ce0| 6e 74 6f 75 72 57 69 6e | 64 6f 77 20 21 3d 20 30 |ntourWin|dow != 0|
|00001cf0| 3b 0d 0d 09 09 09 4d 79 | 53 65 74 45 78 74 65 6e |;.....My|SetExten|
|00001d00| 64 65 64 49 74 65 6d 28 | 64 6c 67 2c 20 66 69 72 |dedItem(|dlg, fir|
|00001d10| 73 74 4c 65 76 65 6c 49 | 74 65 6d 2c 20 76 73 2d |stLevelI|tem, vs-|
|00001d20| 3e 66 69 72 73 74 4c 65 | 76 65 6c 29 3b 0d 09 09 |>firstLe|vel);...|
|00001d30| 09 4d 79 53 65 74 45 78 | 74 65 6e 64 65 64 49 74 |.MySetEx|tendedIt|
|00001d40| 65 6d 28 64 6c 67 2c 20 | 6c 61 73 74 4c 65 76 65 |em(dlg, |lastLeve|
|00001d50| 6c 49 74 65 6d 2c 20 76 | 73 2d 3e 6c 61 73 74 4c |lItem, v|s->lastL|
|00001d60| 65 76 65 6c 29 3b 0d 09 | 09 09 4d 79 53 65 74 45 |evel);..|..MySetE|
|00001d70| 78 74 65 6e 64 65 64 49 | 74 65 6d 28 64 6c 67 2c |xtendedI|tem(dlg,|
|00001d80| 20 64 69 73 74 61 6e 63 | 65 49 74 65 6d 2c 20 76 | distanc|eItem, v|
|00001d90| 73 2d 3e 6c 65 76 65 6c | 53 74 65 70 29 3b 0d 09 |s->level|Step);..|
|00001da0| 09 09 4d 79 53 65 74 45 | 78 74 65 6e 64 65 64 49 |..MySetE|xtendedI|
|00001db0| 74 65 6d 28 64 6c 67 2c | 20 78 31 46 72 6f 6d 49 |tem(dlg,| x1FromI|
|00001dc0| 74 65 6d 2c 20 78 31 4d | 69 6e 29 3b 0d 09 09 09 |tem, x1M|in);....|
|00001dd0| 4d 79 53 65 74 45 78 74 | 65 6e 64 65 64 49 74 65 |MySetExt|endedIte|
|00001de0| 6d 28 64 6c 67 2c 20 78 | 31 54 6f 49 74 65 6d 2c |m(dlg, x|1ToItem,|
|00001df0| 20 78 31 4d 61 78 29 3b | 0d 09 09 09 4d 79 53 65 | x1Max);|....MySe|
|00001e00| 74 45 78 74 65 6e 64 65 | 64 49 74 65 6d 28 64 6c |tExtende|dItem(dl|
|00001e10| 67 2c 20 78 32 46 72 6f | 6d 49 74 65 6d 2c 20 78 |g, x2Fro|mItem, x|
|00001e20| 32 4d 69 6e 29 3b 0d 09 | 09 09 4d 79 53 65 74 45 |2Min);..|..MySetE|
|00001e30| 78 74 65 6e 64 65 64 49 | 74 65 6d 28 64 6c 67 2c |xtendedI|tem(dlg,|
|00001e40| 20 78 32 54 6f 49 74 65 | 6d 2c 20 78 32 4d 61 78 | x2ToIte|m, x2Max|
|00001e50| 29 3b 0d 09 09 09 4d 79 | 53 65 74 4c 6f 6e 67 49 |);....My|SetLongI|
|00001e60| 74 65 6d 28 64 6c 67 2c | 20 78 31 52 65 73 49 74 |tem(dlg,| x1ResIt|
|00001e70| 65 6d 2c 20 76 73 2d 3e | 78 31 52 65 73 29 3b 0d |em, vs->|x1Res);.|
|00001e80| 09 09 09 4d 79 53 65 74 | 4c 6f 6e 67 49 74 65 6d |...MySet|LongItem|
|00001e90| 28 64 6c 67 2c 20 78 32 | 52 65 73 49 74 65 6d 2c |(dlg, x2|ResItem,|
|00001ea0| 20 76 73 2d 3e 78 32 52 | 65 73 29 3b 0d 09 09 09 | vs->x2R|es);....|
|00001eb0| 43 72 65 61 74 65 50 61 | 72 61 6d 50 6f 70 75 70 |CreatePa|ramPopup|
|00001ec0| 28 64 6c 67 2c 20 78 31 | 50 6f 70 75 70 49 74 65 |(dlg, x1|PopupIte|
|00001ed0| 6d 2c 20 76 73 2d 3e 78 | 31 50 61 72 61 6d 29 3b |m, vs->x|1Param);|
|00001ee0| 0d 09 09 09 43 72 65 61 | 74 65 50 61 72 61 6d 50 |....Crea|teParamP|
|00001ef0| 6f 70 75 70 28 64 6c 67 | 2c 20 78 32 50 6f 70 75 |opup(dlg|, x2Popu|
|00001f00| 70 49 74 65 6d 2c 20 76 | 73 2d 3e 78 32 50 61 72 |pItem, v|s->x2Par|
|00001f10| 61 6d 29 3b 0d 09 09 09 | 4d 79 53 65 74 49 74 65 |am);....|MySetIte|
|00001f20| 6d 56 61 6c 75 65 28 64 | 6c 67 2c 20 75 73 65 43 |mValue(d|lg, useC|
|00001f30| 75 72 72 65 6e 74 47 72 | 61 70 68 49 74 65 6d 2c |urrentGr|aphItem,|
|00001f40| 20 75 73 65 43 75 72 72 | 65 6e 74 47 72 61 70 68 | useCurr|entGraph|
|00001f50| 29 3b 0d 0d 09 09 09 4d | 61 6b 65 57 69 6e 64 6f |);.....M|akeWindo|
|00001f60| 77 50 6f 70 75 70 28 64 | 6c 67 2c 20 77 69 6e 64 |wPopup(d|lg, wind|
|00001f70| 6f 77 49 74 65 6d 2c 20 | 64 61 74 61 54 79 70 65 |owItem, |dataType|
|00001f80| 29 3b 0d 09 09 09 69 66 | 20 28 76 73 2d 3e 63 75 |);....if| (vs->cu|
|00001f90| 73 74 6f 6d 43 6f 6e 74 | 6f 75 72 57 69 6e 64 6f |stomCont|ourWindo|
|00001fa0| 77 29 0d 09 09 09 09 53 | 65 74 49 74 65 6d 47 65 |w).....S|etItemGe|
|00001fb0| 6e 65 72 61 6c 28 64 6c | 67 2c 20 77 69 6e 64 6f |neral(dl|g, windo|
|00001fc0| 77 49 74 65 6d 2c 20 26 | 76 73 2d 3e 63 75 73 74 |wItem, &|vs->cust|
|00001fd0| 6f 6d 43 6f 6e 74 6f 75 | 72 57 69 6e 64 6f 77 29 |omContou|rWindow)|
|00001fe0| 3b 0d 09 09 09 4d 61 6b | 65 43 6f 6c 75 6d 6e 50 |;....Mak|eColumnP|
|00001ff0| 6f 70 75 70 28 64 6c 67 | 2c 20 63 6f 6c 75 6d 6e |opup(dlg|, column|
|00002000| 49 74 65 6d 2c 20 77 69 | 6e 64 6f 77 49 74 65 6d |Item, wi|ndowItem|
|00002010| 2c 20 31 29 3b 0d 09 09 | 09 69 66 20 28 76 73 2d |, 1);...|.if (vs-|
|00002020| 3e 63 75 73 74 6f 6d 43 | 6f 6e 74 6f 75 72 43 6f |>customC|ontourCo|
|00002030| 6c 75 6d 6e 29 0d 09 09 | 09 09 4d 79 53 65 74 49 |lumn)...|..MySetI|
|00002040| 74 65 6d 56 61 6c 75 65 | 28 64 6c 67 2c 20 63 6f |temValue|(dlg, co|
|00002050| 6c 75 6d 6e 49 74 65 6d | 2c 20 76 73 2d 3e 63 75 |lumnItem|, vs->cu|
|00002060| 73 74 6f 6d 43 6f 6e 74 | 6f 75 72 43 6f 6c 75 6d |stomCont|ourColum|
|00002070| 6e 29 3b 0d 09 09 09 4d | 79 53 65 74 49 74 65 6d |n);....M|ySetItem|
|00002080| 56 61 6c 75 65 28 64 6c | 67 2c 20 72 65 67 75 6c |Value(dl|g, regul|
|00002090| 61 72 43 6f 6e 74 6f 75 | 72 49 74 65 6d 2c 20 21 |arContou|rItem, !|
|000020a0| 63 75 73 74 6f 6d 43 6f | 6e 74 6f 75 72 73 29 3b |customCo|ntours);|
|000020b0| 0d 09 09 09 4d 79 53 65 | 74 49 74 65 6d 56 61 6c |....MySe|tItemVal|
|000020c0| 75 65 28 64 6c 67 2c 20 | 63 75 73 74 6f 6d 43 6f |ue(dlg, |customCo|
|000020d0| 6e 74 6f 75 72 49 74 65 | 6d 2c 20 63 75 73 74 6f |ntourIte|m, custo|
|000020e0| 6d 43 6f 6e 74 6f 75 72 | 73 29 3b 0d 09 09 09 69 |mContour|s);....i|
|000020f0| 66 20 28 46 72 6f 6e 74 | 6d 6f 73 74 57 69 6e 64 |f (Front|mostWind|
|00002100| 6f 77 28 64 61 74 61 54 | 79 70 65 29 3d 3d 30 29 |ow(dataT|ype)==0)|
|00002110| 09 09 09 09 09 09 2f 2f | 20 69 66 20 6e 6f 20 64 |......//| if no d|
|00002120| 61 74 61 20 77 69 6e 64 | 6f 77 0d 09 09 09 09 4d |ata wind|ow.....M|
|00002130| 79 48 69 6c 69 74 65 49 | 74 65 6d 28 64 6c 67 2c |yHiliteI|tem(dlg,|
|00002140| 20 63 75 73 74 6f 6d 43 | 6f 6e 74 6f 75 72 49 74 | customC|ontourIt|
|00002150| 65 6d 2c 20 32 35 35 29 | 3b 09 09 09 2f 2f 20 64 |em, 255)|;...// d|
|00002160| 69 73 61 62 6c 65 20 63 | 75 73 74 6f 6d 0d 0d 09 |isable c|ustom...|
|00002170| 09 09 53 68 6f 77 48 69 | 64 65 49 74 65 6d 73 28 |..ShowHi|deItems(|
|00002180| 64 6c 67 29 3b 0d 09 09 | 09 4d 79 53 65 6c 65 63 |dlg);...|.MySelec|
|00002190| 74 49 74 65 6d 54 65 78 | 74 28 64 6c 67 2c 20 78 |tItemTex|t(dlg, x|
|000021a0| 31 46 72 6f 6d 49 74 65 | 6d 2c 20 30 2c 20 30 78 |1FromIte|m, 0, 0x|
|000021b0| 37 46 46 46 29 3b 0d 09 | 09 09 4d 79 53 68 6f 77 |7FFF);..|..MyShow|
|000021c0| 44 69 61 6c 6f 67 28 64 | 6c 67 29 3b 0d 09 09 09 |Dialog(d|lg);....|
|000021d0| 64 6f 0d 09 09 09 7b 0d | 09 09 09 09 4d 79 4d 6f |do....{.|....MyMo|
|000021e0| 64 61 6c 44 69 61 6c 6f | 67 28 64 6c 67 2c 20 26 |dalDialo|g(dlg, &|
|000021f0| 69 74 65 6d 48 69 74 29 | 3b 0d 0d 09 09 09 09 73 |itemHit)|;......s|
|00002200| 77 69 74 63 68 28 69 74 | 65 6d 48 69 74 29 0d 09 |witch(it|emHit)..|
|00002210| 09 09 09 7b 0d 0d 09 09 | 09 09 63 61 73 65 20 72 |...{....|..case r|
|00002220| 65 67 75 6c 61 72 43 6f | 6e 74 6f 75 72 49 74 65 |egularCo|ntourIte|
|00002230| 6d 3a 0d 09 09 09 09 09 | 09 4d 79 53 65 74 49 74 |m:......|.MySetIt|
|00002240| 65 6d 56 61 6c 75 65 28 | 64 6c 67 2c 20 63 75 73 |emValue(|dlg, cus|
|00002250| 74 6f 6d 43 6f 6e 74 6f | 75 72 49 74 65 6d 2c 20 |tomConto|urItem, |
|00002260| 30 29 3b 0d 09 09 09 09 | 09 09 53 68 6f 77 48 69 |0);.....|..ShowHi|
|00002270| 64 65 49 74 65 6d 73 28 | 64 6c 67 29 3b 0d 09 09 |deItems(|dlg);...|
|00002280| 09 09 09 09 62 72 65 61 | 6b 3b 0d 09 09 09 09 63 |....brea|k;.....c|
|00002290| 61 73 65 20 63 75 73 74 | 6f 6d 43 6f 6e 74 6f 75 |ase cust|omContou|
|000022a0| 72 49 74 65 6d 3a 0d 09 | 09 09 09 09 09 4d 79 53 |rItem:..|.....MyS|
|000022b0| 65 74 49 74 65 6d 56 61 | 6c 75 65 28 64 6c 67 2c |etItemVa|lue(dlg,|
|000022c0| 20 72 65 67 75 6c 61 72 | 43 6f 6e 74 6f 75 72 49 | regular|ContourI|
|000022d0| 74 65 6d 2c 20 30 29 3b | 0d 09 09 09 09 09 09 53 |tem, 0);|.......S|
|000022e0| 68 6f 77 48 69 64 65 49 | 74 65 6d 73 28 64 6c 67 |howHideI|tems(dlg|
|000022f0| 29 3b 0d 09 09 09 09 09 | 09 62 72 65 61 6b 3b 0d |);......|.break;.|
|00002300| 09 09 09 09 63 61 73 65 | 20 68 65 6c 70 42 75 74 |....case| helpBut|
|00002310| 74 6f 6e 49 74 65 6d 3a | 0d 09 09 09 09 09 09 4d |tonItem:|.......M|
|00002320| 79 41 6c 65 72 74 28 33 | 30 30 30 33 29 3b 09 09 |yAlert(3|0003);..|
|00002330| 09 09 09 2f 2f 20 62 72 | 69 6e 67 20 75 70 20 68 |...// br|ing up h|
|00002340| 65 6c 70 20 61 6c 65 72 | 74 0d 09 09 09 09 09 09 |elp aler|t.......|
|00002350| 62 72 65 61 6b 3b 0d 09 | 09 09 09 63 61 73 65 20 |break;..|...case |
|00002360| 6f 6b 3a 0d 09 09 09 09 | 09 7b 0d 09 09 09 09 09 |ok:.....|.{......|
|00002370| 09 64 6f 75 62 6c 65 09 | 66 69 72 73 74 4c 65 76 |.double.|firstLev|
|00002380| 65 6c 3b 0d 09 09 09 09 | 09 09 64 6f 75 62 6c 65 |el;.....|..double|
|00002390| 09 6c 61 73 74 4c 65 76 | 65 6c 3b 0d 09 09 09 09 |.lastLev|el;.....|
|000023a0| 09 09 64 6f 75 62 6c 65 | 09 6c 65 76 65 6c 53 74 |..double|.levelSt|
|000023b0| 65 70 3b 0d 09 09 09 09 | 09 09 6c 6f 6e 67 09 78 |ep;.....|..long.x|
|000023c0| 31 52 65 73 2c 20 78 32 | 52 65 73 3b 0d 09 09 09 |1Res, x2|Res;....|
|000023d0| 09 09 09 73 68 6f 72 74 | 09 78 31 50 61 72 61 6d |...short|.x1Param|
|000023e0| 20 3d 20 47 65 74 50 61 | 72 61 6d 50 6f 70 75 70 | = GetPa|ramPopup|
|000023f0| 28 64 6c 67 2c 20 78 31 | 50 6f 70 75 70 49 74 65 |(dlg, x1|PopupIte|
|00002400| 6d 29 3b 0d 09 09 09 09 | 09 09 73 68 6f 72 74 09 |m);.....|..short.|
|00002410| 78 32 50 61 72 61 6d 20 | 3d 20 47 65 74 50 61 72 |x2Param |= GetPar|
|00002420| 61 6d 50 6f 70 75 70 28 | 64 6c 67 2c 20 78 32 50 |amPopup(|dlg, x2P|
|00002430| 6f 70 75 70 49 74 65 6d | 29 3b 0d 09 09 09 09 09 |opupItem|);......|
|00002440| 09 0d 09 09 09 09 09 09 | 69 66 20 28 78 31 50 61 |........|if (x1Pa|
|00002450| 72 61 6d 20 3d 3d 20 78 | 32 50 61 72 61 6d 29 0d |ram == x|2Param).|
|00002460| 09 09 09 09 09 09 7b 09 | 53 79 73 42 65 65 70 28 |......{.|SysBeep(|
|00002470| 33 30 29 3b 0d 09 09 09 | 09 09 09 09 4d 79 41 6c |30);....|....MyAl|
|00002480| 65 72 74 28 33 30 30 30 | 32 29 3b 09 09 09 09 09 |ert(3000|2);.....|
|00002490| 09 09 09 09 09 2f 2f 20 | 79 6f 75 20 6d 75 73 74 |.....// |you must|
|000024a0| 20 73 65 6c 65 63 74 20 | 64 69 66 66 65 72 65 6e | select |differen|
|000024b0| 74 20 78 20 61 6e 64 20 | 79 20 70 61 72 61 6d 65 |t x and |y parame|
|000024c0| 74 65 72 73 0d 09 09 09 | 09 09 09 09 69 74 65 6d |ters....|....item|
|000024d0| 48 69 74 20 3d 20 30 3b | 0d 09 09 09 09 09 09 7d |Hit = 0;|.......}|
|000024e0| 20 65 6c 73 65 20 69 66 | 20 28 21 28 09 4d 79 47 | else if| (!(.MyG|
|000024f0| 65 74 45 78 74 65 6e 64 | 65 64 49 74 65 6d 28 64 |etExtend|edItem(d|
|00002500| 6c 67 2c 20 66 69 72 73 | 74 4c 65 76 65 6c 49 74 |lg, firs|tLevelIt|
|00002510| 65 6d 2c 20 26 66 69 72 | 73 74 4c 65 76 65 6c 29 |em, &fir|stLevel)|
|00002520| 20 26 26 0d 09 09 09 09 | 09 09 09 09 4d 79 47 65 | &&.....|....MyGe|
|00002530| 74 45 78 74 65 6e 64 65 | 64 49 74 65 6d 28 64 6c |tExtende|dItem(dl|
|00002540| 67 2c 20 6c 61 73 74 4c | 65 76 65 6c 49 74 65 6d |g, lastL|evelItem|
|00002550| 2c 20 26 6c 61 73 74 4c | 65 76 65 6c 29 20 26 26 |, &lastL|evel) &&|
|00002560| 0d 09 09 09 09 09 09 09 | 09 4d 79 47 65 74 45 78 |........|.MyGetEx|
|00002570| 74 65 6e 64 65 64 49 74 | 65 6d 28 64 6c 67 2c 20 |tendedIt|em(dlg, |
|00002580| 64 69 73 74 61 6e 63 65 | 49 74 65 6d 2c 20 26 6c |distance|Item, &l|
|00002590| 65 76 65 6c 53 74 65 70 | 29 20 26 26 0d 09 09 09 |evelStep|) &&....|
|000025a0| 09 09 09 09 09 4d 79 47 | 65 74 45 78 74 65 6e 64 |.....MyG|etExtend|
|000025b0| 65 64 49 74 65 6d 28 64 | 6c 67 2c 20 78 31 46 72 |edItem(d|lg, x1Fr|
|000025c0| 6f 6d 49 74 65 6d 2c 20 | 26 78 31 4d 69 6e 29 20 |omItem, |&x1Min) |
|000025d0| 26 26 0d 09 09 09 09 09 | 09 09 09 4d 79 47 65 74 |&&......|...MyGet|
|000025e0| 45 78 74 65 6e 64 65 64 | 49 74 65 6d 28 64 6c 67 |Extended|Item(dlg|
|000025f0| 2c 20 78 31 54 6f 49 74 | 65 6d 2c 20 26 78 31 4d |, x1ToIt|em, &x1M|
|00002600| 61 78 29 20 26 26 0d 09 | 09 09 09 09 09 09 09 4d |ax) &&..|.......M|
|00002610| 79 47 65 74 45 78 74 65 | 6e 64 65 64 49 74 65 6d |yGetExte|ndedItem|
|00002620| 28 64 6c 67 2c 20 78 32 | 46 72 6f 6d 49 74 65 6d |(dlg, x2|FromItem|
|00002630| 2c 20 26 78 32 4d 69 6e | 29 20 26 26 0d 09 09 09 |, &x2Min|) &&....|
|00002640| 09 09 09 09 09 4d 79 47 | 65 74 45 78 74 65 6e 64 |.....MyG|etExtend|
|00002650| 65 64 49 74 65 6d 28 64 | 6c 67 2c 20 78 32 54 6f |edItem(d|lg, x2To|
|00002660| 49 74 65 6d 2c 20 26 78 | 32 4d 61 78 29 20 26 26 |Item, &x|2Max) &&|
|00002670| 0d 09 09 09 09 09 09 09 | 09 47 65 74 52 65 73 6f |........|.GetReso|
|00002680| 6c 75 74 69 6f 6e 28 64 | 6c 67 2c 20 78 31 52 65 |lution(d|lg, x1Re|
|00002690| 73 49 74 65 6d 2c 20 26 | 78 31 52 65 73 29 20 26 |sItem, &|x1Res) &|
|000026a0| 26 0d 09 09 09 09 09 09 | 09 09 47 65 74 52 65 73 |&.......|..GetRes|
|000026b0| 6f 6c 75 74 69 6f 6e 28 | 64 6c 67 2c 20 78 32 52 |olution(|dlg, x2R|
|000026c0| 65 73 49 74 65 6d 2c 20 | 26 78 32 52 65 73 29 29 |esItem, |&x2Res))|
|000026d0| 29 0d 09 09 09 09 09 09 | 09 09 09 69 74 65 6d 48 |).......|...itemH|
|000026e0| 69 74 20 3d 20 30 3b 09 | 09 09 09 09 09 09 09 2f |it = 0;.|......./|
|000026f0| 2f 20 69 66 20 62 61 64 | 20 65 6e 74 72 79 0d 09 |/ if bad| entry..|
|00002700| 09 09 09 09 09 65 6c 73 | 65 20 69 66 20 28 66 69 |.....els|e if (fi|
|00002710| 72 73 74 4c 65 76 65 6c | 20 3e 20 6c 61 73 74 4c |rstLevel| > lastL|
|00002720| 65 76 65 6c 29 0d 09 09 | 09 09 09 09 7b 09 4d 79 |evel)...|....{.My|
|00002730| 53 65 6c 65 63 74 49 74 | 65 6d 54 65 78 74 28 64 |SelectIt|emText(d|
|00002740| 6c 67 2c 20 66 69 72 73 | 74 4c 65 76 65 6c 49 74 |lg, firs|tLevelIt|
|00002750| 65 6d 2c 20 30 2c 20 30 | 78 37 46 46 46 29 3b 0d |em, 0, 0|x7FFF);.|
|00002760| 09 09 09 09 09 09 09 53 | 79 73 42 65 65 70 28 33 |.......S|ysBeep(3|
|00002770| 30 29 3b 0d 09 09 09 09 | 09 09 09 69 74 65 6d 48 |0);.....|...itemH|
|00002780| 69 74 20 3d 20 30 3b 0d | 09 09 09 09 09 09 7d 0d |it = 0;.|......}.|
|00002790| 09 09 09 09 09 09 65 6c | 73 65 20 69 66 20 28 6c |......el|se if (l|
|000027a0| 65 76 65 6c 53 74 65 70 | 20 3c 3d 20 31 65 2d 31 |evelStep| <= 1e-1|
|000027b0| 30 30 20 7c 7c 20 28 6c | 61 73 74 4c 65 76 65 6c |00 || (l|astLevel|
|000027c0| 2d 66 69 72 73 74 4c 65 | 76 65 6c 29 2f 6c 65 76 |-firstLe|vel)/lev|
|000027d0| 65 6c 53 74 65 70 20 3e | 20 31 30 30 30 29 0d 09 |elStep >| 1000)..|
|000027e0| 09 09 09 09 09 7b 09 4d | 79 53 65 6c 65 63 74 49 |.....{.M|ySelectI|
|000027f0| 74 65 6d 54 65 78 74 28 | 64 6c 67 2c 20 64 69 73 |temText(|dlg, dis|
|00002800| 74 61 6e 63 65 49 74 65 | 6d 2c 20 30 2c 20 30 78 |tanceIte|m, 0, 0x|
|00002810| 37 46 46 46 29 3b 0d 09 | 09 09 09 09 09 09 53 79 |7FFF);..|......Sy|
|00002820| 73 42 65 65 70 28 33 30 | 29 3b 0d 09 09 09 09 09 |sBeep(30|);......|
|00002830| 09 09 69 74 65 6d 48 69 | 74 20 3d 20 30 3b 0d 09 |..itemHi|t = 0;..|
|00002840| 09 09 09 09 09 7d 0d 09 | 09 09 09 09 09 65 6c 73 |.....}..|.....els|
|00002850| 65 20 69 66 20 28 78 31 | 4d 69 6e 20 3e 3d 20 78 |e if (x1|Min >= x|
|00002860| 31 4d 61 78 29 0d 09 09 | 09 09 09 09 7b 09 4d 79 |1Max)...|....{.My|
|00002870| 53 65 6c 65 63 74 49 74 | 65 6d 54 65 78 74 28 64 |SelectIt|emText(d|
|00002880| 6c 67 2c 20 78 31 46 72 | 6f 6d 49 74 65 6d 2c 20 |lg, x1Fr|omItem, |
|00002890| 30 2c 20 30 78 37 46 46 | 46 29 3b 0d 09 09 09 09 |0, 0x7FF|F);.....|
|000028a0| 09 09 09 53 79 73 42 65 | 65 70 28 33 30 29 3b 0d |...SysBe|ep(30);.|
|000028b0| 09 09 09 09 09 09 09 69 | 74 65 6d 48 69 74 20 3d |.......i|temHit =|
|000028c0| 20 30 3b 0d 09 09 09 09 | 09 09 7d 0d 09 09 09 09 | 0;.....|..}.....|
|000028d0| 09 09 65 6c 73 65 20 69 | 66 20 28 78 32 4d 69 6e |..else i|f (x2Min|
|000028e0| 20 3e 3d 20 78 32 4d 61 | 78 29 0d 09 09 09 09 09 | >= x2Ma|x)......|
|000028f0| 09 7b 09 4d 79 53 65 6c | 65 63 74 49 74 65 6d 54 |.{.MySel|ectItemT|
|00002900| 65 78 74 28 64 6c 67 2c | 20 78 32 46 72 6f 6d 49 |ext(dlg,| x2FromI|
|00002910| 74 65 6d 2c 20 30 2c 20 | 30 78 37 46 46 46 29 3b |tem, 0, |0x7FFF);|
|00002920| 0d 09 09 09 09 09 09 09 | 53 79 73 42 65 65 70 28 |........|SysBeep(|
|00002930| 33 30 29 3b 0d 09 09 09 | 09 09 09 09 69 74 65 6d |30);....|....item|
|00002940| 48 69 74 20 3d 20 30 3b | 0d 09 09 09 09 09 09 7d |Hit = 0;|.......}|
|00002950| 0d 09 09 09 09 09 09 65 | 6c 73 65 0d 09 09 09 09 |.......e|lse.....|
|00002960| 09 09 7b 0d 09 09 09 09 | 09 09 09 69 66 20 28 4d |..{.....|...if (M|
|00002970| 79 47 65 74 49 74 65 6d | 56 61 6c 75 65 28 64 6c |yGetItem|Value(dl|
|00002980| 67 2c 20 72 65 67 75 6c | 61 72 43 6f 6e 74 6f 75 |g, regul|arContou|
|00002990| 72 49 74 65 6d 29 29 09 | 2f 2f 20 69 66 20 72 65 |rItem)).|// if re|
|000029a0| 67 75 6c 61 72 20 63 6f | 6e 74 6f 75 72 20 6c 65 |gular co|ntour le|
|000029b0| 76 65 6c 73 0d 09 09 09 | 09 09 09 09 7b 09 76 73 |vels....|....{.vs|
|000029c0| 2d 3e 66 69 72 73 74 4c | 65 76 65 6c 20 3d 20 66 |->firstL|evel = f|
|000029d0| 69 72 73 74 4c 65 76 65 | 6c 3b 0d 09 09 09 09 09 |irstLeve|l;......|
|000029e0| 09 09 09 76 73 2d 3e 6c | 61 73 74 4c 65 76 65 6c |...vs->l|astLevel|
|000029f0| 20 3d 20 6c 61 73 74 4c | 65 76 65 6c 3b 0d 09 09 | = lastL|evel;...|
|00002a00| 09 09 09 09 09 09 76 73 | 2d 3e 6c 65 76 65 6c 53 |......vs|->levelS|
|00002a10| 74 65 70 20 3d 20 6c 65 | 76 65 6c 53 74 65 70 3b |tep = le|velStep;|
|00002a20| 0d 09 09 09 09 09 09 09 | 09 76 73 2d 3e 63 75 73 |........|.vs->cus|
|00002a30| 74 6f 6d 43 6f 6e 74 6f | 75 72 57 69 6e 64 6f 77 |tomConto|urWindow|
|00002a40| 20 3d 20 30 3b 0d 09 09 | 09 09 09 09 09 09 76 73 | = 0;...|......vs|
|00002a50| 2d 3e 63 75 73 74 6f 6d | 43 6f 6e 74 6f 75 72 43 |->custom|ContourC|
|00002a60| 6f 6c 75 6d 6e 20 3d 20 | 30 3b 0d 09 09 09 09 09 |olumn = |0;......|
|00002a70| 09 09 7d 20 65 6c 73 65 | 0d 09 09 09 09 09 09 09 |..} else|........|
|00002a80| 7b 09 47 65 74 49 74 65 | 6d 47 65 6e 65 72 61 6c |{.GetIte|mGeneral|
|00002a90| 28 64 6c 67 2c 20 77 69 | 6e 64 6f 77 49 74 65 6d |(dlg, wi|ndowItem|
|00002aa0| 2c 20 26 76 73 2d 3e 63 | 75 73 74 6f 6d 43 6f 6e |, &vs->c|ustomCon|
|00002ab0| 74 6f 75 72 57 69 6e 64 | 6f 77 29 3b 09 2f 2f 20 |tourWind|ow);.// |
|00002ac0| 67 65 74 20 77 69 6e 64 | 6f 77 0d 09 09 09 09 09 |get wind|ow......|
|00002ad0| 09 09 09 76 73 2d 3e 63 | 75 73 74 6f 6d 43 6f 6e |...vs->c|ustomCon|
|00002ae0| 74 6f 75 72 43 6f 6c 75 | 6d 6e 20 3d 20 4d 79 47 |tourColu|mn = MyG|
|00002af0| 65 74 49 74 65 6d 56 61 | 6c 75 65 28 64 6c 67 2c |etItemVa|lue(dlg,|
|00002b00| 20 63 6f 6c 75 6d 6e 49 | 74 65 6d 29 3b 09 2f 2f | columnI|tem);.//|
|00002b10| 20 61 6e 64 20 63 6f 6c | 75 6d 6e 0d 09 09 09 09 | and col|umn.....|
|00002b20| 09 09 09 7d 0d 09 09 09 | 09 09 09 09 76 73 2d 3e |...}....|....vs->|
|00002b30| 78 31 52 65 73 20 3d 20 | 78 31 52 65 73 3b 0d 09 |x1Res = |x1Res;..|
|00002b40| 09 09 09 09 09 09 76 73 | 2d 3e 78 32 52 65 73 20 |......vs|->x2Res |
|00002b50| 3d 20 78 32 52 65 73 3b | 0d 09 09 09 09 09 09 09 |= x2Res;|........|
|00002b60| 76 73 2d 3e 78 31 4d 69 | 6e 20 3d 20 78 31 4d 69 |vs->x1Mi|n = x1Mi|
|00002b70| 6e 3b 0d 09 09 09 09 09 | 09 09 76 73 2d 3e 78 31 |n;......|..vs->x1|
|00002b80| 4d 61 78 20 3d 20 78 31 | 4d 61 78 3b 0d 09 09 09 |Max = x1|Max;....|
|00002b90| 09 09 09 09 76 73 2d 3e | 78 32 4d 69 6e 20 3d 20 |....vs->|x2Min = |
|00002ba0| 78 32 4d 69 6e 3b 0d 09 | 09 09 09 09 09 09 76 73 |x2Min;..|......vs|
|00002bb0| 2d 3e 78 32 4d 61 78 20 | 3d 20 78 32 4d 61 78 3b |->x2Max |= x2Max;|
|00002bc0| 0d 09 09 09 09 09 09 09 | 76 73 2d 3e 78 31 50 61 |........|vs->x1Pa|
|00002bd0| 72 61 6d 20 3d 20 47 65 | 74 50 61 72 61 6d 50 6f |ram = Ge|tParamPo|
|00002be0| 70 75 70 28 64 6c 67 2c | 20 78 31 50 6f 70 75 70 |pup(dlg,| x1Popup|
|00002bf0| 49 74 65 6d 29 3b 0d 09 | 09 09 09 09 09 09 76 73 |Item);..|......vs|
|00002c00| 2d 3e 78 32 50 61 72 61 | 6d 20 3d 20 47 65 74 50 |->x2Para|m = GetP|
|00002c10| 61 72 61 6d 50 6f 70 75 | 70 28 64 6c 67 2c 20 78 |aramPopu|p(dlg, x|
|00002c20| 32 50 6f 70 75 70 49 74 | 65 6d 29 3b 0d 09 09 09 |2PopupIt|em);....|
|00002c30| 09 09 09 09 75 73 65 43 | 75 72 72 65 6e 74 47 72 |....useC|urrentGr|
|00002c40| 61 70 68 20 3d 20 4d 79 | 47 65 74 49 74 65 6d 56 |aph = My|GetItemV|
|00002c50| 61 6c 75 65 28 64 6c 67 | 2c 20 75 73 65 43 75 72 |alue(dlg|, useCur|
|00002c60| 72 65 6e 74 47 72 61 70 | 68 49 74 65 6d 29 3b 0d |rentGrap|hItem);.|
|00002c70| 09 09 09 09 09 09 7d 0d | 09 09 09 09 09 7d 2f 2f |......}.|.....}//|
|00002c80| 20 63 61 73 65 20 6f 6b | 0d 09 09 09 09 7d 2f 2f | case ok|.....}//|
|00002c90| 73 77 69 74 63 68 0d 09 | 09 09 7d 77 68 69 6c 65 |switch..|..}while|
|00002ca0| 20 28 69 74 65 6d 48 69 | 74 20 21 3d 20 6f 6b 20 | (itemHi|t != ok |
|00002cb0| 26 26 20 69 74 65 6d 48 | 69 74 20 21 3d 20 63 61 |&& itemH|it != ca|
|00002cc0| 6e 63 65 6c 29 3b 0d 09 | 09 09 69 66 20 28 69 74 |ncel);..|..if (it|
|00002cd0| 65 6d 48 69 74 20 3d 3d | 20 63 61 6e 63 65 6c 29 |emHit ==| cancel)|
|00002ce0| 20 53 74 6f 70 45 78 65 | 63 75 74 69 6f 6e 28 29 | StopExe|cution()|
|00002cf0| 3b 0d 09 09 09 4d 79 44 | 69 73 70 6f 73 65 44 69 |;....MyD|isposeDi|
|00002d00| 61 6c 6f 67 28 64 6c 67 | 29 3b 0d 09 09 7d 0d 0d |alog(dlg|);...}..|
|00002d10| 0d 09 09 43 6c 6f 73 65 | 52 65 73 46 69 6c 65 28 |...Close|ResFile(|
|00002d20| 72 65 73 46 69 6c 65 29 | 3b 0d 09 7d 0d 09 69 66 |resFile)|;..}..if|
|00002d30| 20 28 54 65 73 74 53 74 | 6f 70 28 29 29 20 72 65 | (TestSt|op()) re|
|00002d40| 74 75 72 6e 3b 0d 0d 09 | 53 65 74 57 61 69 74 54 |turn;...|SetWaitT|
|00002d50| 69 74 6c 65 28 22 5c 70 | 43 61 6c 63 75 6c 61 74 |itle("\p|Calculat|
|00002d60| 69 6e 67 20 6d 61 74 72 | 69 78 22 29 3b 0d 09 7b |ing matr|ix");..{|
|00002d70| 0d 09 09 64 6f 75 62 6c | 65 09 78 31 53 74 65 70 |...doubl|e.x1Step|
|00002d80| 20 3d 20 28 76 73 2d 3e | 78 31 4d 61 78 20 2d 20 | = (vs->|x1Max - |
|00002d90| 76 73 2d 3e 78 31 4d 69 | 6e 29 2f 76 73 2d 3e 78 |vs->x1Mi|n)/vs->x|
|00002da0| 31 52 65 73 3b 0d 09 09 | 64 6f 75 62 6c 65 09 78 |1Res;...|double.x|
|00002db0| 32 53 74 65 70 20 3d 20 | 28 76 73 2d 3e 78 32 4d |2Step = |(vs->x2M|
|00002dc0| 61 78 20 2d 20 76 73 2d | 3e 78 32 4d 69 6e 29 2f |ax - vs-|>x2Min)/|
|00002dd0| 76 73 2d 3e 78 32 52 65 | 73 3b 0d 09 09 64 6f 75 |vs->x2Re|s;...dou|
|00002de0| 62 6c 65 09 6f 72 69 67 | 58 31 2c 20 6f 72 69 67 |ble.orig|X1, orig|
|00002df0| 58 32 3b 0d 0d 09 09 69 | 66 20 28 76 73 2d 3e 78 |X2;....i|f (vs->x|
|00002e00| 31 50 61 72 61 6d 29 20 | 6f 72 69 67 58 31 20 3d |1Param) |origX1 =|
|00002e10| 20 47 65 74 46 75 6e 63 | 74 69 6f 6e 50 61 72 61 | GetFunc|tionPara|
|00002e20| 6d 28 22 5c 70 22 2c 20 | 76 73 2d 3e 78 31 50 61 |m("\p", |vs->x1Pa|
|00002e30| 72 61 6d 29 3b 09 2f 2f | 20 73 61 76 65 20 63 75 |ram);.//| save cu|
|00002e40| 72 72 65 6e 74 20 70 61 | 72 61 6d 73 20 66 6f 72 |rrent pa|rams for|
|00002e50| 20 72 65 73 74 6f 72 69 | 6e 67 20 74 68 65 6d 20 | restori|ng them |
|00002e60| 6c 61 74 65 72 0d 09 09 | 69 66 20 28 76 73 2d 3e |later...|if (vs->|
|00002e70| 78 32 50 61 72 61 6d 29 | 20 6f 72 69 67 58 32 20 |x2Param)| origX2 |
|00002e80| 3d 20 47 65 74 46 75 6e | 63 74 69 6f 6e 50 61 72 |= GetFun|ctionPar|
|00002e90| 61 6d 28 22 5c 70 22 2c | 20 76 73 2d 3e 78 32 50 |am("\p",| vs->x2P|
|00002ea0| 61 72 61 6d 29 3b 09 2f | 2f 20 73 61 76 65 20 63 |aram);./|/ save c|
|00002eb0| 75 72 72 65 6e 74 20 70 | 61 72 61 6d 73 20 66 6f |urrent p|arams fo|
|00002ec0| 72 20 72 65 73 74 6f 72 | 69 6e 67 20 74 68 65 6d |r restor|ing them|
|00002ed0| 20 6c 61 74 65 72 0d 0d | 09 09 76 20 3d 20 49 6e | later..|..v = In|
|00002ee0| 69 74 43 6f 6e 74 6f 75 | 72 50 6c 6f 74 74 65 72 |itContou|rPlotter|
|00002ef0| 28 76 73 2d 3e 78 31 52 | 65 73 2b 31 2c 20 76 73 |(vs->x1R|es+1, vs|
|00002f00| 2d 3e 78 32 52 65 73 2b | 31 2c 20 76 73 2d 3e 78 |->x2Res+|1, vs->x|
|00002f10| 31 4d 69 6e 2c 20 76 73 | 2d 3e 78 31 4d 61 78 2c |1Min, vs|->x1Max,|
|00002f20| 0d 09 09 09 09 76 73 2d | 3e 78 32 4d 69 6e 2c 20 |.....vs-|>x2Min, |
|00002f30| 76 73 2d 3e 78 32 4d 61 | 78 29 3b 0d 09 09 69 66 |vs->x2Ma|x);...if|
|00002f40| 20 28 76 3d 3d 6e 69 6c | 29 0d 09 09 7b 09 53 74 | (v==nil|)...{.St|
|00002f50| 6f 70 45 78 65 63 75 74 | 69 6f 6e 28 29 3b 0d 09 |opExecut|ion();..|
|00002f60| 09 09 67 6f 74 6f 20 64 | 6f 6e 65 3b 0d 09 09 7d |..goto d|one;...}|
|00002f70| 0d 0d 09 09 69 66 20 28 | 21 43 61 6c 63 75 6c 61 |....if (|!Calcula|
|00002f80| 74 65 43 6f 6e 74 6f 75 | 72 4d 61 74 72 69 78 28 |teContou|rMatrix(|
|00002f90| 4d 79 46 75 6e 63 74 69 | 6f 6e 2c 20 76 73 2c 20 |MyFuncti|on, vs, |
|00002fa0| 76 29 29 0d 09 09 7b 09 | 53 74 6f 70 45 78 65 63 |v))...{.|StopExec|
|00002fb0| 75 74 69 6f 6e 28 29 3b | 0d 09 09 09 67 6f 74 6f |ution();|....goto|
|00002fc0| 20 64 6f 6e 65 3b 0d 09 | 09 7d 0d 0d 09 09 69 66 | done;..|.}....if|
|00002fd0| 20 28 76 73 2d 3e 78 31 | 50 61 72 61 6d 29 20 53 | (vs->x1|Param) S|
|00002fe0| 65 74 46 75 6e 63 74 69 | 6f 6e 50 61 72 61 6d 28 |etFuncti|onParam(|
|00002ff0| 22 5c 70 22 2c 20 76 73 | 2d 3e 78 31 50 61 72 61 |"\p", vs|->x1Para|
|00003000| 6d 2c 20 6f 72 69 67 58 | 31 29 3b 09 2f 2f 20 72 |m, origX|1);.// r|
|00003010| 65 73 74 6f 72 65 20 70 | 61 72 61 6d 73 0d 09 09 |estore p|arams...|
|00003020| 69 66 20 28 76 73 2d 3e | 78 32 50 61 72 61 6d 29 |if (vs->|x2Param)|
|00003030| 20 53 65 74 46 75 6e 63 | 74 69 6f 6e 50 61 72 61 | SetFunc|tionPara|
|00003040| 6d 28 22 5c 70 22 2c 20 | 76 73 2d 3e 78 32 50 61 |m("\p", |vs->x2Pa|
|00003050| 72 61 6d 2c 20 6f 72 69 | 67 58 32 29 3b 09 2f 2f |ram, ori|gX2);.//|
|00003060| 20 72 65 73 74 6f 72 65 | 20 70 61 72 61 6d 73 0d | restore| params.|
|00003070| 0d 09 7d 0d 0d 09 53 65 | 74 4c 69 6e 65 53 74 79 |..}...Se|tLineSty|
|00003080| 6c 65 28 31 2c 31 29 3b | 0d 09 53 65 74 4c 69 6e |le(1,1);|..SetLin|
|00003090| 65 43 6f 6c 6f 72 28 30 | 2c 30 2c 30 29 3b 0d 09 |eColor(0|,0,0);..|
|000030a0| 69 66 20 28 75 73 65 43 | 75 72 72 65 6e 74 47 72 |if (useC|urrentGr|
|000030b0| 61 70 68 20 3d 3d 20 66 | 61 6c 73 65 29 0d 09 7b |aph == f|alse)..{|
|000030c0| 09 43 72 65 61 74 65 4e | 65 77 47 72 61 70 68 28 |.CreateN|ewGraph(|
|000030d0| 76 73 2d 3e 78 31 4d 69 | 6e 2c 20 76 73 2d 3e 78 |vs->x1Mi|n, vs->x|
|000030e0| 31 4d 61 78 2c 20 76 73 | 2d 3e 78 32 4d 69 6e 2c |1Max, vs|->x2Min,|
|000030f0| 20 76 73 2d 3e 78 32 4d | 61 78 2c 20 30 2c 20 30 | vs->x2M|ax, 0, 0|
|00003100| 29 3b 0d 09 09 69 66 20 | 28 54 65 73 74 53 74 6f |);...if |(TestSto|
|00003110| 70 28 29 29 20 67 6f 74 | 6f 20 64 6f 6e 65 3b 0d |p()) got|o done;.|
|00003120| 09 7d 0d 0d 0d 09 44 69 | 73 61 62 6c 65 44 72 61 |.}....Di|sableDra|
|00003130| 77 69 6e 67 55 70 64 61 | 74 65 73 28 29 3b 09 09 |wingUpda|tes();..|
|00003140| 09 09 09 09 2f 2f 20 61 | 76 6f 69 64 73 20 66 6c |....// a|voids fl|
|00003150| 69 63 6b 65 72 20 69 6e | 20 64 72 61 77 69 6e 67 |icker in| drawing|
|00003160| 20 77 69 6e 64 6f 77 0d | 0d 09 7b 0d 09 09 42 6f | window.|..{...Bo|
|00003170| 6f 6c 65 61 6e 09 09 61 | 6c 6c 4c 65 76 65 6c 73 |olean..a|llLevels|
|00003180| 44 6f 6e 65 3d 66 61 6c | 73 65 3b 0d 09 09 64 6f |Done=fal|se;...do|
|00003190| 75 62 6c 65 09 09 6c 65 | 76 65 6c 3b 0d 09 09 6c |uble..le|vel;...l|
|000031a0| 6f 6e 67 09 09 72 6f 77 | 20 3d 20 31 3b 0d 09 09 |ong..row| = 1;...|
|000031b0| 42 6f 6f 6c 65 61 6e 09 | 09 72 65 67 75 6c 61 72 |Boolean.|.regular|
|000031c0| 4c 65 76 65 6c 73 20 3d | 20 76 73 2d 3e 63 75 73 |Levels =| vs->cus|
|000031d0| 74 6f 6d 43 6f 6e 74 6f | 75 72 57 69 6e 64 6f 77 |tomConto|urWindow|
|000031e0| 3d 3d 30 3b 09 09 2f 2f | 20 74 72 75 65 20 69 66 |==0;..//| true if|
|000031f0| 20 72 65 67 75 6c 61 72 | 20 6c 65 76 65 6c 73 2c | regular| levels,|
|00003200| 20 66 61 6c 73 65 20 69 | 66 20 63 75 73 74 6f 6d | false i|f custom|
|00003210| 20 6c 65 76 65 6c 73 0d | 09 09 6c 6f 6e 67 09 09 | levels.|..long..|
|00003220| 6c 65 76 65 6c 43 6f 6c | 20 3d 20 76 73 2d 3e 63 |levelCol| = vs->c|
|00003230| 75 73 74 6f 6d 43 6f 6e | 74 6f 75 72 43 6f 6c 75 |ustomCon|tourColu|
|00003240| 6d 6e 3b 09 09 09 09 2f | 2f 20 74 68 65 20 63 6f |mn;..../|/ the co|
|00003250| 6c 75 6d 6e 20 66 6f 72 | 20 63 75 73 74 6f 6d 20 |lumn for| custom |
|00003260| 6c 65 76 65 6c 73 0d 09 | 09 6c 6f 6e 67 09 09 74 |levels..|.long..t|
|00003270| 68 69 63 6b 43 6f 6c 3d | 30 2c 20 64 61 73 68 43 |hickCol=|0, dashC|
|00003280| 6f 6c 3d 30 2c 20 72 43 | 6f 6c 3d 30 2c 20 67 43 |ol=0, rC|ol=0, gC|
|00003290| 6f 6c 3d 30 2c 20 62 43 | 6f 6c 3d 30 3b 09 2f 2f |ol=0, bC|ol=0;.//|
|000032a0| 20 74 68 65 20 63 6f 6c | 75 6d 6e 73 20 66 6f 72 | the col|umns for|
|000032b0| 20 74 68 69 63 6b 6e 65 | 73 73 2c 20 64 61 73 68 | thickne|ss, dash|
|000032c0| 2c 20 72 67 62 2d 76 61 | 6c 75 65 73 0d 09 09 6c |, rgb-va|lues...l|
|000032d0| 6f 6e 67 09 09 6e 61 6d | 65 43 6f 6c 3d 30 3b 0d |ong..nam|eCol=0;.|
|000032e0| 0d 0d 09 09 69 66 20 28 | 72 65 67 75 6c 61 72 4c |....if (|regularL|
|000032f0| 65 76 65 6c 73 29 0d 09 | 09 09 6c 65 76 65 6c 20 |evels)..|..level |
|00003300| 3d 20 76 73 2d 3e 66 69 | 72 73 74 4c 65 76 65 6c |= vs->fi|rstLevel|
|00003310| 3b 0d 09 09 65 6c 73 65 | 09 09 09 09 09 09 09 09 |;...else|........|
|00003320| 09 09 09 2f 2f 20 70 61 | 72 73 65 20 66 6f 72 20 |...// pa|rse for |
|00003330| 73 70 65 63 69 61 6c 20 | 61 64 64 69 74 69 6f 6e |special |addition|
|00003340| 61 6c 20 63 6f 6c 75 6d | 6e 73 0d 09 09 7b 0d 09 |al colum|ns...{..|
|00003350| 09 09 42 6f 6f 6c 65 61 | 6e 20 63 6f 6c 75 6d 6e |..Boolea|n column|
|00003360| 73 44 6f 6e 65 20 3d 20 | 66 61 6c 73 65 3b 0d 09 |sDone = |false;..|
|00003370| 09 09 6c 6f 6e 67 20 69 | 20 3d 20 6c 65 76 65 6c |..long i| = level|
|00003380| 43 6f 6c 2b 31 3b 0d 09 | 09 09 53 65 74 43 75 72 |Col+1;..|..SetCur|
|00003390| 72 65 6e 74 57 69 6e 64 | 6f 77 28 76 73 2d 3e 63 |rentWind|ow(vs->c|
|000033a0| 75 73 74 6f 6d 43 6f 6e | 74 6f 75 72 57 69 6e 64 |ustomCon|tourWind|
|000033b0| 6f 77 29 3b 0d 09 09 09 | 77 68 69 6c 65 20 28 69 |ow);....|while (i|
|000033c0| 3c 3d 4e 72 43 6f 6c 73 | 28 29 20 26 26 20 21 63 |<=NrCols|() && !c|
|000033d0| 6f 6c 75 6d 6e 73 44 6f | 6e 65 29 0d 09 09 09 7b |olumnsDo|ne)....{|
|000033e0| 0d 09 09 09 09 53 74 72 | 32 35 35 09 73 3b 0d 09 |.....Str|255.s;..|
|000033f0| 09 09 09 47 65 74 43 6f | 6c 4e 61 6d 65 28 73 2c |...GetCo|lName(s,|
|00003400| 20 69 29 3b 0d 09 09 09 | 09 69 66 20 28 47 65 74 | i);....|.if (Get|
|00003410| 43 6f 6c 54 79 70 65 28 | 69 29 20 21 3d 20 74 65 |ColType(|i) != te|
|00003420| 78 74 43 6f 6c 75 6d 6e | 29 0d 09 09 09 09 7b 0d |xtColumn|).....{.|
|00003430| 09 09 09 09 09 69 66 20 | 28 45 71 75 61 6c 53 74 |.....if |(EqualSt|
|00003440| 72 32 35 35 28 73 2c 20 | 22 5c 70 74 68 69 63 6b |r255(s, |"\pthick|
|00003450| 6e 65 73 73 22 29 29 0d | 09 09 09 09 09 09 74 68 |ness")).|......th|
|00003460| 69 63 6b 43 6f 6c 20 3d | 20 69 3b 0d 09 09 09 09 |ickCol =| i;.....|
|00003470| 09 65 6c 73 65 20 69 66 | 20 28 45 71 75 61 6c 53 |.else if| (EqualS|
|00003480| 74 72 32 35 35 28 73 2c | 20 22 5c 70 64 61 73 68 |tr255(s,| "\pdash|
|00003490| 22 29 29 0d 09 09 09 09 | 09 09 64 61 73 68 43 6f |")).....|..dashCo|
|000034a0| 6c 20 3d 20 69 3b 0d 09 | 09 09 09 09 65 6c 73 65 |l = i;..|....else|
|000034b0| 20 69 66 20 28 45 71 75 | 61 6c 53 74 72 32 35 35 | if (Equ|alStr255|
|000034c0| 28 73 2c 20 22 5c 70 72 | 22 29 29 0d 09 09 09 09 |(s, "\pr|")).....|
|000034d0| 09 09 72 43 6f 6c 20 3d | 20 69 3b 0d 09 09 09 09 |..rCol =| i;.....|
|000034e0| 09 65 6c 73 65 20 69 66 | 20 28 45 71 75 61 6c 53 |.else if| (EqualS|
|000034f0| 74 72 32 35 35 28 73 2c | 20 22 5c 70 67 22 29 29 |tr255(s,| "\pg"))|
|00003500| 0d 09 09 09 09 09 09 67 | 43 6f 6c 20 3d 20 69 3b |.......g|Col = i;|
|00003510| 0d 09 09 09 09 09 65 6c | 73 65 20 69 66 20 28 45 |......el|se if (E|
|00003520| 71 75 61 6c 53 74 72 32 | 35 35 28 73 2c 20 22 5c |qualStr2|55(s, "\|
|00003530| 70 62 22 29 29 0d 09 09 | 09 09 09 09 62 43 6f 6c |pb"))...|....bCol|
|00003540| 20 3d 20 69 3b 0d 09 09 | 09 09 09 65 6c 73 65 20 | = i;...|...else |
|00003550| 63 6f 6c 75 6d 6e 73 44 | 6f 6e 65 20 3d 20 74 72 |columnsD|one = tr|
|00003560| 75 65 3b 0d 09 09 09 09 | 7d 0d 09 09 09 09 65 6c |ue;.....|}.....el|
|00003570| 73 65 20 69 66 20 28 45 | 71 75 61 6c 53 74 72 32 |se if (E|qualStr2|
|00003580| 35 35 28 73 2c 20 22 5c | 70 6e 61 6d 65 22 29 29 |55(s, "\|pname"))|
|00003590| 0d 09 09 09 09 09 6e 61 | 6d 65 43 6f 6c 20 3d 20 |......na|meCol = |
|000035a0| 69 3b 0d 09 09 09 09 65 | 6c 73 65 20 63 6f 6c 75 |i;.....e|lse colu|
|000035b0| 6d 6e 73 44 6f 6e 65 20 | 3d 20 74 72 75 65 3b 0d |mnsDone |= true;.|
|000035c0| 09 09 09 09 69 20 2b 3d | 20 31 3b 0d 09 09 09 7d |....i +=| 1;....}|
|000035d0| 0d 09 09 09 69 66 20 28 | 72 43 6f 6c 20 3d 3d 20 |....if (|rCol == |
|000035e0| 30 20 7c 7c 20 67 43 6f | 6c 20 3d 3d 20 30 20 7c |0 || gCo|l == 0 ||
|000035f0| 7c 20 62 43 6f 6c 20 3d | 3d 20 30 29 09 09 2f 2f || bCol =|= 0)..//|
|00003600| 20 74 68 65 79 20 6d 75 | 73 74 20 61 6c 6c 20 62 | they mu|st all b|
|00003610| 65 20 21 3d 20 30 0d 09 | 09 09 09 72 43 6f 6c 20 |e != 0..|...rCol |
|00003620| 3d 20 67 43 6f 6c 20 3d | 20 62 43 6f 6c 20 3d 20 |= gCol =| bCol = |
|00003630| 30 3b 0d 09 09 09 69 66 | 20 28 6f 6c 64 44 61 74 |0;....if| (oldDat|
|00003640| 61 57 69 6e 64 6f 77 29 | 20 53 65 74 43 75 72 72 |aWindow)| SetCurr|
|00003650| 65 6e 74 57 69 6e 64 6f | 77 28 6f 6c 64 44 61 74 |entWindo|w(oldDat|
|00003660| 61 57 69 6e 64 6f 77 29 | 3b 0d 09 09 7d 0d 0d 09 |aWindow)|;...}...|
|00003670| 09 77 68 69 6c 65 20 28 | 21 61 6c 6c 4c 65 76 65 |.while (|!allLeve|
|00003680| 6c 73 44 6f 6e 65 29 0d | 09 09 7b 0d 09 09 09 53 |lsDone).|..{....S|
|00003690| 74 72 32 35 35 09 63 75 | 72 76 65 4e 61 6d 65 3b |tr255.cu|rveName;|
|000036a0| 0d 09 09 09 53 74 72 32 | 35 35 09 73 74 61 74 75 |....Str2|55.statu|
|000036b0| 73 3b 0d 09 09 09 64 6f | 75 62 6c 65 09 74 68 69 |s;....do|uble.thi|
|000036c0| 63 6b 20 3d 20 31 2e 30 | 3b 0d 09 09 09 64 6f 75 |ck = 1.0|;....dou|
|000036d0| 62 6c 65 09 64 61 73 68 | 20 3d 20 31 3b 0d 09 09 |ble.dash| = 1;...|
|000036e0| 09 64 6f 75 62 6c 65 09 | 72 3d 30 2c 20 67 3d 30 |.double.|r=0, g=0|
|000036f0| 2c 20 62 3d 30 3b 0d 0d | 09 09 09 69 66 20 28 21 |, b=0;..|...if (!|
|00003700| 72 65 67 75 6c 61 72 4c | 65 76 65 6c 73 29 0d 09 |regularL|evels)..|
|00003710| 09 09 7b 0d 09 09 09 09 | 53 65 74 43 75 72 72 65 |..{.....|SetCurre|
|00003720| 6e 74 57 69 6e 64 6f 77 | 28 76 73 2d 3e 63 75 73 |ntWindow|(vs->cus|
|00003730| 74 6f 6d 43 6f 6e 74 6f | 75 72 57 69 6e 64 6f 77 |tomConto|urWindow|
|00003740| 29 3b 0d 09 09 09 09 77 | 68 69 6c 65 20 28 21 54 |);.....w|hile (!T|
|00003750| 65 73 74 44 61 74 61 28 | 72 6f 77 2c 20 6c 65 76 |estData(|row, lev|
|00003760| 65 6c 43 6f 6c 29 29 0d | 09 09 09 09 7b 09 69 66 |elCol)).|....{.if|
|00003770| 20 28 72 6f 77 20 3e 3d | 20 4e 72 52 6f 77 73 28 | (row >=| NrRows(|
|00003780| 29 29 0d 09 09 09 09 09 | 7b 09 61 6c 6c 4c 65 76 |))......|{.allLev|
|00003790| 65 6c 73 44 6f 6e 65 20 | 3d 20 74 72 75 65 3b 0d |elsDone |= true;.|
|000037a0| 09 09 09 09 09 09 62 72 | 65 61 6b 3b 09 09 09 09 |......br|eak;....|
|000037b0| 09 09 09 09 2f 2f 20 69 | 66 20 61 6c 6c 20 64 6f |....// i|f all do|
|000037c0| 6e 65 0d 09 09 09 09 09 | 7d 0d 09 09 09 09 09 72 |ne......|}......r|
|000037d0| 6f 77 20 2b 3d 20 31 3b | 0d 09 09 09 09 7d 0d 09 |ow += 1;|.....}..|
|000037e0| 09 09 09 69 66 20 28 61 | 6c 6c 4c 65 76 65 6c 73 |...if (a|llLevels|
|000037f0| 44 6f 6e 65 29 20 62 72 | 65 61 6b 3b 0d 09 09 09 |Done) br|eak;....|
|00003800| 09 6c 65 76 65 6c 20 3d | 20 47 65 74 44 61 74 61 |.level =| GetData|
|00003810| 28 72 6f 77 2c 20 6c 65 | 76 65 6c 43 6f 6c 29 3b |(row, le|velCol);|
|00003820| 0d 09 09 09 09 69 66 20 | 28 74 68 69 63 6b 43 6f |.....if |(thickCo|
|00003830| 6c 20 21 3d 20 30 20 26 | 26 20 54 65 73 74 44 61 |l != 0 &|& TestDa|
|00003840| 74 61 28 72 6f 77 2c 20 | 74 68 69 63 6b 43 6f 6c |ta(row, |thickCol|
|00003850| 29 29 0d 09 09 09 09 09 | 74 68 69 63 6b 20 3d 20 |))......|thick = |
|00003860| 47 65 74 44 61 74 61 28 | 72 6f 77 2c 20 74 68 69 |GetData(|row, thi|
|00003870| 63 6b 43 6f 6c 29 3b 0d | 09 09 09 09 69 66 20 28 |ckCol);.|....if (|
|00003880| 64 61 73 68 43 6f 6c 20 | 21 3d 20 30 20 26 26 20 |dashCol |!= 0 && |
|00003890| 54 65 73 74 44 61 74 61 | 28 72 6f 77 2c 20 64 61 |TestData|(row, da|
|000038a0| 73 68 43 6f 6c 29 29 0d | 09 09 09 09 09 64 61 73 |shCol)).|.....das|
|000038b0| 68 20 3d 20 47 65 74 44 | 61 74 61 28 72 6f 77 2c |h = GetD|ata(row,|
|000038c0| 20 64 61 73 68 43 6f 6c | 29 3b 0d 09 09 09 09 69 | dashCol|);.....i|
|000038d0| 66 20 28 72 43 6f 6c 20 | 21 3d 20 30 20 26 26 20 |f (rCol |!= 0 && |
|000038e0| 54 65 73 74 44 61 74 61 | 28 72 6f 77 2c 20 72 43 |TestData|(row, rC|
|000038f0| 6f 6c 29 20 26 26 20 54 | 65 73 74 44 61 74 61 28 |ol) && T|estData(|
|00003900| 72 6f 77 2c 20 67 43 6f | 6c 29 20 26 26 20 54 65 |row, gCo|l) && Te|
|00003910| 73 74 44 61 74 61 28 72 | 6f 77 2c 20 62 43 6f 6c |stData(r|ow, bCol|
|00003920| 29 29 0d 09 09 09 09 7b | 09 72 20 3d 20 47 65 74 |)).....{|.r = Get|
|00003930| 44 61 74 61 28 72 6f 77 | 2c 20 72 43 6f 6c 29 3b |Data(row|, rCol);|
|00003940| 0d 09 09 09 09 09 67 20 | 3d 20 47 65 74 44 61 74 |......g |= GetDat|
|00003950| 61 28 72 6f 77 2c 20 67 | 43 6f 6c 29 3b 0d 09 09 |a(row, g|Col);...|
|00003960| 09 09 09 62 20 3d 20 47 | 65 74 44 61 74 61 28 72 |...b = G|etData(r|
|00003970| 6f 77 2c 20 62 43 6f 6c | 29 3b 0d 09 09 09 09 7d |ow, bCol|);.....}|
|00003980| 0d 09 09 09 09 69 66 20 | 28 6e 61 6d 65 43 6f 6c |.....if |(nameCol|
|00003990| 20 21 3d 20 30 29 0d 09 | 09 09 09 09 47 65 74 43 | != 0)..|....GetC|
|000039a0| 65 6c 6c 28 63 75 72 76 | 65 4e 61 6d 65 2c 20 72 |ell(curv|eName, r|
|000039b0| 6f 77 2c 20 6e 61 6d 65 | 43 6f 6c 29 3b 0d 09 09 |ow, name|Col);...|
|000039c0| 09 09 72 6f 77 20 2b 3d | 20 31 3b 0d 09 09 09 09 |..row +=| 1;.....|
|000039d0| 69 66 20 28 72 6f 77 20 | 3e 20 4e 72 52 6f 77 73 |if (row |> NrRows|
|000039e0| 28 29 29 20 61 6c 6c 4c | 65 76 65 6c 73 44 6f 6e |()) allL|evelsDon|
|000039f0| 65 20 3d 20 74 72 75 65 | 3b 0d 0d 09 09 09 09 69 |e = true|;......i|
|00003a00| 66 20 28 6f 6c 64 44 61 | 74 61 57 69 6e 64 6f 77 |f (oldDa|taWindow|
|00003a10| 29 20 53 65 74 43 75 72 | 72 65 6e 74 57 69 6e 64 |) SetCur|rentWind|
|00003a20| 6f 77 28 6f 6c 64 44 61 | 74 61 57 69 6e 64 6f 77 |ow(oldDa|taWindow|
|00003a30| 29 3b 0d 09 09 09 7d 0d | 0d 09 09 09 69 66 20 28 |);....}.|....if (|
|00003a40| 6e 61 6d 65 43 6f 6c 20 | 3d 3d 20 30 29 0d 09 09 |nameCol |== 0)...|
|00003a50| 09 09 4e 75 6d 62 65 72 | 54 6f 53 74 72 32 35 35 |..Number|ToStr255|
|00003a60| 28 6c 65 76 65 6c 2c 20 | 63 75 72 76 65 4e 61 6d |(level, |curveNam|
|00003a70| 65 2c 20 30 2c 20 33 29 | 3b 0d 09 09 09 43 6f 6e |e, 0, 3)|;....Con|
|00003a80| 63 61 74 32 28 73 74 61 | 74 75 73 2c 20 22 5c 70 |cat2(sta|tus, "\p|
|00003a90| 6c 65 76 65 6c 3a 20 22 | 2c 20 63 75 72 76 65 4e |level: "|, curveN|
|00003aa0| 61 6d 65 29 3b 0d 0d 09 | 09 09 53 65 74 4c 69 6e |ame);...|..SetLin|
|00003ab0| 65 53 74 79 6c 65 28 74 | 68 69 63 6b 2c 20 64 61 |eStyle(t|hick, da|
|00003ac0| 73 68 29 3b 0d 09 09 09 | 53 65 74 4c 69 6e 65 43 |sh);....|SetLineC|
|00003ad0| 6f 6c 6f 72 28 72 2c 67 | 2c 62 29 3b 0d 0d 09 09 |olor(r,g|,b);....|
|00003ae0| 09 53 65 74 57 61 69 74 | 54 69 74 6c 65 28 73 74 |.SetWait|Title(st|
|00003af0| 61 74 75 73 29 3b 0d 09 | 09 09 4f 70 65 6e 43 75 |atus);..|..OpenCu|
|00003b00| 72 76 65 28 63 75 72 76 | 65 4e 61 6d 65 29 3b 0d |rve(curv|eName);.|
|00003b10| 09 09 09 69 66 20 28 21 | 44 72 61 77 43 6f 6e 74 |...if (!|DrawCont|
|00003b20| 6f 75 72 28 6c 65 76 65 | 6c 2c 20 76 29 29 20 67 |our(leve|l, v)) g|
|00003b30| 6f 74 6f 20 64 6f 6e 65 | 3b 0d 09 09 09 43 6c 6f |oto done|;....Clo|
|00003b40| 73 65 43 75 72 76 65 28 | 29 3b 0d 09 09 09 53 65 |seCurve(|);....Se|
|00003b50| 74 4c 69 6e 65 53 74 79 | 6c 65 28 31 2c 31 29 3b |tLineSty|le(1,1);|
|00003b60| 0d 09 09 09 53 65 74 4c | 69 6e 65 43 6f 6c 6f 72 |....SetL|ineColor|
|00003b70| 28 30 2c 30 2c 30 29 3b | 0d 09 09 09 69 66 20 28 |(0,0,0);|....if (|
|00003b80| 72 65 67 75 6c 61 72 4c | 65 76 65 6c 73 29 0d 09 |regularL|evels)..|
|00003b90| 09 09 7b 09 6c 65 76 65 | 6c 20 2b 3d 20 76 73 2d |..{.leve|l += vs-|
|00003ba0| 3e 6c 65 76 65 6c 53 74 | 65 70 3b 0d 09 09 09 09 |>levelSt|ep;.....|
|00003bb0| 61 6c 6c 4c 65 76 65 6c | 73 44 6f 6e 65 20 3d 20 |allLevel|sDone = |
|00003bc0| 6c 65 76 65 6c 20 3e 20 | 76 73 2d 3e 6c 61 73 74 |level > |vs->last|
|00003bd0| 4c 65 76 65 6c 3b 0d 09 | 09 09 7d 0d 0d 09 09 7d |Level;..|..}....}|
|00003be0| 0d 09 7d 0d 0d 0d 0d 64 | 6f 6e 65 3a 09 09 09 09 |..}....d|one:....|
|00003bf0| 09 09 09 09 09 09 09 09 | 2f 2f 20 63 6c 65 61 6e |........|// clean|
|00003c00| 20 75 70 0d 09 44 69 73 | 70 6f 73 65 43 6f 6e 74 | up..Dis|poseCont|
|00003c10| 6f 75 72 50 6c 6f 74 74 | 65 72 28 76 29 3b 09 09 |ourPlott|er(v);..|
|00003c20| 09 09 09 09 2f 2f 20 64 | 6f 65 73 20 6e 6f 74 68 |....// d|oes noth|
|00003c30| 69 6e 67 20 69 66 20 76 | 3d 3d 6e 69 6c 0d 09 69 |ing if v|==nil..i|
|00003c40| 66 20 28 6f 6c 64 44 61 | 74 61 57 69 6e 64 6f 77 |f (oldDa|taWindow|
|00003c50| 29 20 53 65 74 43 75 72 | 72 65 6e 74 57 69 6e 64 |) SetCur|rentWind|
|00003c60| 6f 77 28 6f 6c 64 44 61 | 74 61 57 69 6e 64 6f 77 |ow(oldDa|taWindow|
|00003c70| 29 3b 0d 09 69 66 20 28 | 6d 79 4d 65 6d 6f 72 79 |);..if (|myMemory|
|00003c80| 20 21 3d 20 6e 69 6c 29 | 20 44 69 73 70 6f 73 65 | != nil)| Dispose|
|00003c90| 48 61 6e 64 6c 65 28 6d | 79 4d 65 6d 6f 72 79 29 |Handle(m|yMemory)|
|00003ca0| 3b 0d 7d 0d 0d 2f 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |;.}../**|********|
|00003cb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cd0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003ce0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cf0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2f 0d 0d |********|*****/..|
|00003d00| 76 6f 69 64 20 43 6c 65 | 61 6e 55 70 20 28 45 78 |void Cle|anUp (Ex|
|00003d10| 74 4d 6f 64 75 6c 65 73 | 50 61 72 61 6d 42 6c 6f |tModules|ParamBlo|
|00003d20| 63 6b 2a 20 70 62 29 0d | 09 2f 2a 20 63 61 6c 6c |ck* pb).|./* call|
|00003d30| 65 64 20 77 68 65 6e 20 | 79 6f 75 72 20 63 6f 64 |ed when |your cod|
|00003d40| 65 20 72 65 73 6f 75 72 | 63 65 20 69 73 20 6e 6f |e resour|ce is no|
|00003d50| 74 20 6e 65 65 64 65 64 | 20 61 6e 79 6d 6f 72 65 |t needed| anymore|
|00003d60| 20 2a 2f 0d 09 2f 2a 20 | 69 6e 20 6d 6f 73 74 20 | */../* |in most |
|00003d70| 63 61 73 65 73 2c 20 74 | 68 69 73 20 66 75 6e 63 |cases, t|his func|
|00003d80| 74 69 6f 6e 20 63 61 6e | 20 62 65 20 65 6d 70 74 |tion can| be empt|
|00003d90| 79 20 2a 2f 0d 7b 0d 7d | 0d 0d 0d 2f 2a 2a 2a 2a |y */.{.}|.../****|
|00003da0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003db0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003dc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003dd0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003de0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003df0| 2a 2a 2a 2f 0d 09 09 09 | 09 09 09 2f 2a 20 66 6f |***/....|.../* fo|
|00003e00| 72 20 66 75 6e 63 74 69 | 6f 6e 73 2c 20 6e 6f 74 |r functi|ons, not|
|00003e10| 20 75 73 65 64 20 68 65 | 72 65 3a 20 2a 2f 0d 2f | used he|re: */./|
|00003e20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003e30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003e40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003e50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003e60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003e70| 2a 2a 2a 2a 2a 2a 2a 2f | 0d 0d 76 6f 69 64 20 49 |*******/|..void I|
|00003e80| 6e 69 74 69 61 6c 69 7a | 65 46 75 6e 63 20 28 0d |nitializ|eFunc (.|
|00003e90| 09 09 09 09 42 6f 6f 6c | 65 61 6e 2a 20 63 6f 6e |....Bool|ean* con|
|00003ea0| 73 74 20 68 61 73 44 65 | 72 69 76 61 74 69 76 65 |st hasDe|rivative|
|00003eb0| 73 2c 09 2f 2a 20 73 65 | 74 20 74 6f 20 74 72 75 |s,./* se|t to tru|
|00003ec0| 65 20 69 66 20 79 6f 75 | 20 64 65 66 69 6e 65 20 |e if you| define |
|00003ed0| 74 68 65 20 66 75 6e 63 | 74 69 6f 6e 20 44 65 72 |the func|tion Der|
|00003ee0| 69 76 61 74 69 76 65 73 | 20 74 6f 20 63 61 6c 63 |ivatives| to calc|
|00003ef0| 75 6c 61 74 65 20 74 68 | 65 20 70 61 72 74 69 61 |ulate th|e partia|
|00003f00| 6c 20 64 65 72 69 76 61 | 74 69 76 65 73 20 6f 66 |l deriva|tives of|
|00003f10| 20 79 6f 75 72 20 70 61 | 72 61 6d 65 74 65 72 73 | your pa|rameters|
|00003f20| 20 2a 2f 0d 09 09 09 09 | 53 74 72 32 35 35 20 64 | */.....|Str255 d|
|00003f30| 65 73 63 72 31 73 74 4c | 69 6e 65 2c 09 09 09 2f |escr1stL|ine,.../|
|00003f40| 2a 20 73 74 72 69 6e 67 | 20 31 20 74 6f 20 61 70 |* string| 1 to ap|
|00003f50| 70 65 61 72 20 69 6e 20 | 70 61 72 61 6d 65 74 65 |pear in |paramete|
|00003f60| 72 20 77 69 6e 64 6f 77 | 20 2a 2f 0d 09 09 09 09 |r window| */.....|
|00003f70| 53 74 72 32 35 35 20 64 | 65 73 63 72 32 6e 64 4c |Str255 d|escr2ndL|
|00003f80| 69 6e 65 2c 09 09 09 2f | 2a 20 73 74 72 69 6e 67 |ine,.../|* string|
|00003f90| 20 32 20 74 6f 20 61 70 | 70 65 61 72 20 69 6e 20 | 2 to ap|pear in |
|00003fa0| 70 61 72 61 6d 65 74 65 | 72 20 77 69 6e 64 6f 77 |paramete|r window|
|00003fb0| 20 2a 2f 0d 09 09 09 09 | 73 68 6f 72 74 2a 20 63 | */.....|short* c|
|00003fc0| 6f 6e 73 74 20 6e 75 6d | 62 65 72 4f 66 50 61 72 |onst num|berOfPar|
|00003fd0| 61 6d 73 2c 09 2f 2a 20 | 74 68 65 20 6e 75 6d 62 |ams,./* |the numb|
|00003fe0| 65 72 20 6f 66 20 70 61 | 72 61 6d 65 74 65 72 73 |er of pa|rameters|
|00003ff0| 20 6f 66 20 79 6f 75 72 | 20 66 75 6e 63 74 69 6f | of your| functio|
|00004000| 6e 20 2a 2f 0d 09 09 09 | 09 44 65 66 61 75 6c 74 |n */....|.Default|
|00004010| 50 61 72 61 6d 49 6e 66 | 6f 2a 20 63 6f 6e 73 74 |ParamInf|o* const|
|00004020| 20 61 30 2c 09 09 09 2f | 2a 20 74 68 65 20 64 65 | a0,.../|* the de|
|00004030| 66 61 75 6c 74 20 6e 61 | 6d 65 73 2c 20 76 61 6c |fault na|mes, val|
|00004040| 75 65 73 20 65 74 63 2e | 20 6f 66 20 79 6f 75 72 |ues etc.| of your|
|00004050| 20 70 61 72 61 6d 65 74 | 65 72 73 20 2a 2f 0d 09 | paramet|ers */..|
|00004060| 09 09 09 45 78 74 4d 6f | 64 75 6c 65 73 50 61 72 |...ExtMo|dulesPar|
|00004070| 61 6d 42 6c 6f 63 6b 2a | 20 70 62 29 09 09 2f 2a |amBlock*| pb)../*|
|00004080| 20 63 61 6e 20 62 65 20 | 69 67 6e 6f 72 65 64 20 | can be |ignored |
|00004090| 69 6e 20 6d 6f 73 74 20 | 63 61 73 65 73 20 2a 2f |in most |cases */|
|000040a0| 0d 7b 7d 0d 0d 76 6f 69 | 64 20 46 75 6e 63 20 28 |.{}..voi|d Func (|
|000040b0| 09 09 64 6f 75 62 6c 65 | 20 78 2c 09 09 09 09 09 |..double| x,.....|
|000040c0| 09 2f 2a 20 74 68 65 20 | 78 2d 76 61 6c 75 65 20 |./* the |x-value |
|000040d0| 2a 2f 0d 09 09 09 09 50 | 61 72 61 6d 41 72 72 61 |*/.....P|aramArra|
|000040e0| 79 20 61 2c 09 09 09 09 | 09 2f 2a 20 74 68 65 20 |y a,....|./* the |
|000040f0| 70 61 72 61 6d 65 74 65 | 72 73 20 2a 2f 0d 09 09 |paramete|rs */...|
|00004100| 09 09 64 6f 75 62 6c 65 | 2a 20 63 6f 6e 73 74 20 |..double|* const |
|00004110| 79 2c 09 09 09 09 2f 2a | 20 74 68 65 20 79 2d 76 |y,..../*| the y-v|
|00004120| 61 6c 75 65 20 74 6f 20 | 62 65 20 72 65 74 75 72 |alue to |be retur|
|00004130| 6e 65 64 20 2a 2f 0d 09 | 09 09 09 45 78 74 4d 6f |ned */..|...ExtMo|
|00004140| 64 75 6c 65 73 50 61 72 | 61 6d 42 6c 6f 63 6b 2a |dulesPar|amBlock*|
|00004150| 20 70 62 29 09 09 2f 2a | 20 63 61 6e 20 62 65 20 | pb)../*| can be |
|00004160| 69 67 6e 6f 72 65 64 20 | 69 6e 20 6d 6f 73 74 20 |ignored |in most |
|00004170| 63 61 73 65 73 20 2a 2f | 0d 7b 7d 0d 0d 76 6f 69 |cases */|.{}..voi|
|00004180| 64 20 44 65 72 69 76 61 | 74 69 76 65 73 28 64 6f |d Deriva|tives(do|
|00004190| 75 62 6c 65 20 78 2c 09 | 09 09 09 09 09 2f 2a 20 |uble x,.|...../* |
|000041a0| 74 68 65 20 78 2d 76 61 | 6c 75 65 20 2a 2f 0d 09 |the x-va|lue */..|
|000041b0| 09 09 09 50 61 72 61 6d | 41 72 72 61 79 20 61 2c |...Param|Array a,|
|000041c0| 09 09 09 09 09 2f 2a 20 | 74 68 65 20 70 61 72 61 |...../* |the para|
|000041d0| 6d 65 74 65 72 73 20 2a | 2f 0d 09 09 09 09 50 61 |meters *|/.....Pa|
|000041e0| 72 61 6d 41 72 72 61 79 | 20 64 79 64 61 2c 09 09 |ramArray| dyda,..|
|000041f0| 09 09 2f 2a 20 74 68 65 | 20 64 65 72 69 76 61 74 |../* the| derivat|
|00004200| 69 76 65 73 20 74 6f 20 | 62 65 20 72 65 74 75 72 |ives to |be retur|
|00004210| 6e 65 64 20 2a 2f 0d 09 | 09 09 09 45 78 74 4d 6f |ned */..|...ExtMo|
|00004220| 64 75 6c 65 73 50 61 72 | 61 6d 42 6c 6f 63 6b 2a |dulesPar|amBlock*|
|00004230| 20 70 62 29 0d 7b 7d 0d | 73 68 6f 72 74 20 43 68 | pb).{}.|short Ch|
|00004240| 65 63 6b 28 73 68 6f 72 | 74 20 70 61 72 61 6d 4e |eck(shor|t paramN|
|00004250| 6f 2c 09 09 09 09 09 09 | 2f 2a 20 74 68 65 20 70 |o,......|/* the p|
|00004260| 61 72 61 6d 65 74 65 72 | 20 74 68 61 74 20 77 61 |arameter| that wa|
|00004270| 73 20 63 68 61 6e 67 65 | 64 20 2a 2f 0d 09 09 09 |s change|d */....|
|00004280| 09 44 65 66 61 75 6c 74 | 50 61 72 61 6d 49 6e 66 |.Default|ParamInf|
|00004290| 6f 2a 20 63 6f 6e 73 74 | 20 61 30 2c 09 09 09 2f |o* const| a0,.../|
|000042a0| 2a 20 74 68 65 20 64 65 | 66 61 75 6c 74 20 6e 61 |* the de|fault na|
|000042b0| 6d 65 73 2c 20 76 61 6c | 75 65 73 20 65 74 63 20 |mes, val|ues etc |
|000042c0| 6f 66 20 74 68 65 20 70 | 61 72 61 6d 74 65 72 73 |of the p|aramters|
|000042d0| 20 2a 2f 0d 09 09 09 09 | 45 78 74 4d 6f 64 75 6c | */.....|ExtModul|
|000042e0| 65 73 50 61 72 61 6d 42 | 6c 6f 63 6b 2a 20 70 62 |esParamB|lock* pb|
|000042f0| 29 0d 7b 70 61 72 61 6d | 4e 6f 2d 2d 3b 2f 2a 74 |).{param|No--;/*t|
|00004300| 68 65 20 61 72 72 61 79 | 20 61 30 20 69 73 20 69 |he array| a0 is i|
|00004310| 6e 64 65 78 65 64 20 66 | 72 6f 6d 20 7a 65 72 6f |ndexed f|rom zero|
|00004320| 2e 20 44 65 63 72 65 6d | 65 6e 74 20 70 61 72 61 |. Decrem|ent para|
|00004330| 6d 4e 6f 20 73 6f 20 74 | 68 61 74 20 69 74 20 63 |mNo so t|hat it c|
|00004340| 6f 72 72 65 73 70 6f 6e | 64 73 20 74 6f 20 74 68 |orrespon|ds to th|
|00004350| 65 20 69 6e 69 63 65 73 | 20 6f 66 20 61 30 2a 2f |e inices| of a0*/|
|00004360| 0d 09 72 65 74 75 72 6e | 20 6f 6b 3b 0d 7d 0d 76 |..return| ok;.}.v|
|00004370| 6f 69 64 20 46 69 72 73 | 74 20 28 09 50 61 72 61 |oid Firs|t (.Para|
|00004380| 6d 41 72 72 61 79 20 61 | 2c 09 09 09 09 09 2f 2a |mArray a|,...../*|
|00004390| 20 74 68 65 20 6e 65 77 | 20 70 61 72 61 6d 65 74 | the new| paramet|
|000043a0| 65 72 73 20 2a 2f 0d 09 | 09 09 09 45 78 74 4d 6f |ers */..|...ExtMo|
|000043b0| 64 75 6c 65 73 50 61 72 | 61 6d 42 6c 6f 63 6b 2a |dulesPar|amBlock*|
|000043c0| 20 70 62 29 0d 7b 7d 0d | 76 6f 69 64 20 4c 61 73 | pb).{}.|void Las|
|000043d0| 74 20 28 45 78 74 4d 6f | 64 75 6c 65 73 50 61 72 |t (ExtMo|dulesPar|
|000043e0| 61 6d 42 6c 6f 63 6b 2a | 20 70 62 29 0d 7b 7d 00 |amBlock*| pb).{}.|
|000043f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004400| 00 00 01 00 00 00 01 54 | 00 00 00 54 00 00 00 46 |.......T|...T...F|
|00004410| 08 0f 00 00 ff f0 00 00 | 0f f4 0e 07 ff 00 0f ff |........|........|
|00004420| ff 00 00 0f fb 00 01 0f | fa 0e 07 ff 00 0f ff ff |........|........|
|00004430| 11 43 6f 6e 74 6f 75 72 | 46 75 6e 63 74 69 6f 6e |.Contour|Function|
|00004440| 2e 63 02 00 00 00 54 45 | 58 54 4b 41 48 4c 01 00 |.c....TE|XTKAHL..|
|00004450| 00 00 54 45 58 54 4b 41 | 48 4c 01 00 00 8c 00 00 |..TEXTKA|HL......|
|00004460| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004470| 00 00 a9 68 42 45 00 00 | 43 6f 00 00 01 9a fe 00 |...hBE..|Co......|
|00004480| 01 0f fa 0e 00 ff fb 00 | 03 0f 00 00 ff fe 00 01 |........|........|
|00004490| 0f f4 0b 00 ff fb 00 00 | 0f fb 00 01 0f fa 0b 00 |........|........|
|000044a0| ff fb 00 00 0f fb 00 01 | 0f f4 0b 00 ff fb 00 00 |........|........|
|000044b0| 0f fb 00 01 0f fa 0b 00 | ff fb 00 00 0f fb 00 01 |........|........|
|000044c0| 0f f4 11 09 ff 00 0f ff | f0 00 00 0f 00 00 fe ff |........|........|
|000044d0| 02 00 0f fa 11 09 ff 00 | 0f ff f0 00 00 0f 00 00 |........|........|
|000044e0| fe ff 02 00 0f f4 11 09 | ff 00 0f ff f0 00 00 0f |........|........|
|000044f0| 00 00 fe ff 02 00 0f fa | 11 09 ff 00 0f ff f0 00 |........|........|
|00004500| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....|
|00004510| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004520| 00 00 00 00 00 00 00 03 | 00 04 00 5b 00 08 03 5d |........|...[...]|
|00004530| 02 77 00 5b 00 08 03 5d | 02 77 ad 71 9a d8 00 00 |.w.[...]|.w.q....|
|00004540| 13 47 00 00 13 47 00 00 | 0f e0 00 00 00 00 00 04 |.G...G..|........|
|00004550| 00 01 00 01 00 00 01 00 | 00 00 01 54 00 00 00 54 |........|...T...T|
|00004560| 00 00 00 46 00 70 d1 40 | 11 a2 00 00 00 1c 00 46 |...F.p.@|.......F|
|00004570| 00 01 4d 50 53 52 00 00 | 00 12 4d 57 42 42 00 00 |..MPSR..|..MWBB..|
|00004580| 00 1e 03 ed ff ff 00 00 | 00 00 00 00 00 00 03 f0 |........|........|
|00004590| ff ff 00 00 00 4c 00 00 | 00 00 00 00 00 00 00 00 |.....L..|........|
|000045a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000045b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000045c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000045d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000045e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000045f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+